| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/ui/startup/startup_browser_creator_impl.h" | 5 #include "chrome/browser/ui/startup/startup_browser_creator_impl.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "apps/app_restore_service.h" | 10 #include "apps/app_restore_service.h" |
| 11 #include "apps/app_restore_service_factory.h" | 11 #include "apps/app_restore_service_factory.h" |
| 12 #include "base/bind.h" | 12 #include "base/bind.h" |
| 13 #include "base/bind_helpers.h" | 13 #include "base/bind_helpers.h" |
| 14 #include "base/command_line.h" | 14 #include "base/command_line.h" |
| 15 #include "base/compiler_specific.h" | 15 #include "base/compiler_specific.h" |
| 16 #include "base/environment.h" | 16 #include "base/environment.h" |
| 17 #include "base/lazy_instance.h" | 17 #include "base/lazy_instance.h" |
| 18 #include "base/memory/scoped_ptr.h" | 18 #include "base/memory/scoped_ptr.h" |
| 19 #include "base/metrics/histogram_macros.h" | 19 #include "base/metrics/histogram_macros.h" |
| 20 #include "base/metrics/statistics_recorder.h" | 20 #include "base/metrics/statistics_recorder.h" |
| 21 #include "base/prefs/pref_service.h" | 21 #include "base/prefs/pref_service.h" |
| 22 #include "base/strings/string_number_conversions.h" | 22 #include "base/strings/string_number_conversions.h" |
| 23 #include "base/strings/string_split.h" | 23 #include "base/strings/string_split.h" |
| 24 #include "base/strings/string_util.h" | 24 #include "base/strings/string_util.h" |
| 25 #include "base/strings/stringprintf.h" | 25 #include "base/strings/stringprintf.h" |
| 26 #include "base/strings/utf_string_conversions.h" | 26 #include "base/strings/utf_string_conversions.h" |
| 27 #include "base/threading/thread_restrictions.h" | 27 #include "base/threading/thread_restrictions.h" |
| 28 #include "chrome/browser/apps/install_chrome_app.h" | 28 #include "chrome/browser/apps/install_chrome_app.h" |
| 29 #include "chrome/browser/auto_launch_trial.h" | |
| 30 #include "chrome/browser/browser_process.h" | 29 #include "chrome/browser/browser_process.h" |
| 31 #include "chrome/browser/chrome_notification_types.h" | 30 #include "chrome/browser/chrome_notification_types.h" |
| 32 #include "chrome/browser/custom_handlers/protocol_handler_registry.h" | 31 #include "chrome/browser/custom_handlers/protocol_handler_registry.h" |
| 33 #include "chrome/browser/custom_handlers/protocol_handler_registry_factory.h" | 32 #include "chrome/browser/custom_handlers/protocol_handler_registry_factory.h" |
| 34 #include "chrome/browser/defaults.h" | 33 #include "chrome/browser/defaults.h" |
| 35 #include "chrome/browser/extensions/extension_creator.h" | 34 #include "chrome/browser/extensions/extension_creator.h" |
| 36 #include "chrome/browser/extensions/extension_util.h" | 35 #include "chrome/browser/extensions/extension_util.h" |
| 37 #include "chrome/browser/extensions/launch_util.h" | 36 #include "chrome/browser/extensions/launch_util.h" |
| 38 #include "chrome/browser/extensions/pack_extension_job.h" | 37 #include "chrome/browser/extensions/pack_extension_job.h" |
| 39 #include "chrome/browser/first_run/first_run.h" | 38 #include "chrome/browser/first_run/first_run.h" |
| (...skipping 16 matching lines...) Expand all Loading... |
| 56 #include "chrome/browser/ui/browser_navigator.h" | 55 #include "chrome/browser/ui/browser_navigator.h" |
| 57 #include "chrome/browser/ui/browser_navigator_params.h" | 56 #include "chrome/browser/ui/browser_navigator_params.h" |
| 58 #include "chrome/browser/ui/browser_tabrestore.h" | 57 #include "chrome/browser/ui/browser_tabrestore.h" |
| 59 #include "chrome/browser/ui/browser_tabstrip.h" | 58 #include "chrome/browser/ui/browser_tabstrip.h" |
| 60 #include "chrome/browser/ui/browser_window.h" | 59 #include "chrome/browser/ui/browser_window.h" |
| 61 #include "chrome/browser/ui/chrome_pages.h" | 60 #include "chrome/browser/ui/chrome_pages.h" |
| 62 #include "chrome/browser/ui/extensions/app_launch_params.h" | 61 #include "chrome/browser/ui/extensions/app_launch_params.h" |
| 63 #include "chrome/browser/ui/extensions/application_launch.h" | 62 #include "chrome/browser/ui/extensions/application_launch.h" |
| 64 #include "chrome/browser/ui/host_desktop.h" | 63 #include "chrome/browser/ui/host_desktop.h" |
| 65 #include "chrome/browser/ui/session_crashed_bubble.h" | 64 #include "chrome/browser/ui/session_crashed_bubble.h" |
| 66 #include "chrome/browser/ui/startup/autolaunch_prompt.h" | |
| 67 #include "chrome/browser/ui/startup/bad_flags_prompt.h" | 65 #include "chrome/browser/ui/startup/bad_flags_prompt.h" |
| 68 #include "chrome/browser/ui/startup/default_browser_prompt.h" | 66 #include "chrome/browser/ui/startup/default_browser_prompt.h" |
| 69 #include "chrome/browser/ui/startup/google_api_keys_infobar_delegate.h" | 67 #include "chrome/browser/ui/startup/google_api_keys_infobar_delegate.h" |
| 70 #include "chrome/browser/ui/startup/obsolete_system_infobar_delegate.h" | 68 #include "chrome/browser/ui/startup/obsolete_system_infobar_delegate.h" |
| 71 #include "chrome/browser/ui/startup/session_crashed_infobar_delegate.h" | 69 #include "chrome/browser/ui/startup/session_crashed_infobar_delegate.h" |
| 72 #include "chrome/browser/ui/startup/startup_browser_creator.h" | 70 #include "chrome/browser/ui/startup/startup_browser_creator.h" |
| 73 #include "chrome/browser/ui/tabs/pinned_tab_codec.h" | 71 #include "chrome/browser/ui/tabs/pinned_tab_codec.h" |
| 74 #include "chrome/browser/ui/tabs/tab_strip_model.h" | 72 #include "chrome/browser/ui/tabs/tab_strip_model.h" |
| 75 #include "chrome/common/chrome_constants.h" | 73 #include "chrome/common/chrome_constants.h" |
| 76 #include "chrome/common/chrome_paths.h" | 74 #include "chrome/common/chrome_paths.h" |
| (...skipping 743 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 820 GoogleApiKeysInfoBarDelegate::Create(InfoBarService::FromWebContents( | 818 GoogleApiKeysInfoBarDelegate::Create(InfoBarService::FromWebContents( |
| 821 browser->tab_strip_model()->GetActiveWebContents())); | 819 browser->tab_strip_model()->GetActiveWebContents())); |
| 822 ObsoleteSystemInfoBarDelegate::Create(InfoBarService::FromWebContents( | 820 ObsoleteSystemInfoBarDelegate::Create(InfoBarService::FromWebContents( |
| 823 browser->tab_strip_model()->GetActiveWebContents())); | 821 browser->tab_strip_model()->GetActiveWebContents())); |
| 824 | 822 |
| 825 #if !defined(OS_CHROMEOS) | 823 #if !defined(OS_CHROMEOS) |
| 826 if (!command_line_.HasSwitch(switches::kNoDefaultBrowserCheck)) { | 824 if (!command_line_.HasSwitch(switches::kNoDefaultBrowserCheck)) { |
| 827 // Generally, the default browser prompt should not be shown on first | 825 // Generally, the default browser prompt should not be shown on first |
| 828 // run. However, when the set-as-default dialog has been suppressed, we | 826 // run. However, when the set-as-default dialog has been suppressed, we |
| 829 // need to allow it. | 827 // need to allow it. |
| 830 if ((!is_first_run_ || | 828 if (!is_first_run_ || |
| 831 (browser_creator_ && | 829 (browser_creator_ && |
| 832 browser_creator_->is_default_browser_dialog_suppressed())) && | 830 browser_creator_->is_default_browser_dialog_suppressed())) { |
| 833 !chrome::ShowAutolaunchPrompt(browser)) { | |
| 834 chrome::ShowDefaultBrowserPrompt(profile_, | 831 chrome::ShowDefaultBrowserPrompt(profile_, |
| 835 browser->host_desktop_type()); | 832 browser->host_desktop_type()); |
| 836 } | 833 } |
| 837 } | 834 } |
| 838 #endif | 835 #endif |
| 839 } | 836 } |
| 840 } | 837 } |
| 841 | 838 |
| 842 void StartupBrowserCreatorImpl::AddStartupURLs( | 839 void StartupBrowserCreatorImpl::AddStartupURLs( |
| 843 std::vector<GURL>* startup_urls) const { | 840 std::vector<GURL>* startup_urls) const { |
| (...skipping 159 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1003 TriggeredProfileResetter* triggered_profile_resetter = | 1000 TriggeredProfileResetter* triggered_profile_resetter = |
| 1004 TriggeredProfileResetterFactory::GetForBrowserContext(profile_); | 1001 TriggeredProfileResetterFactory::GetForBrowserContext(profile_); |
| 1005 // TriggeredProfileResetter instance will be nullptr for incognito profiles. | 1002 // TriggeredProfileResetter instance will be nullptr for incognito profiles. |
| 1006 if (triggered_profile_resetter) { | 1003 if (triggered_profile_resetter) { |
| 1007 has_reset_trigger = triggered_profile_resetter->HasResetTrigger(); | 1004 has_reset_trigger = triggered_profile_resetter->HasResetTrigger(); |
| 1008 triggered_profile_resetter->ClearResetTrigger(); | 1005 triggered_profile_resetter->ClearResetTrigger(); |
| 1009 } | 1006 } |
| 1010 #endif // defined(OS_WIN) | 1007 #endif // defined(OS_WIN) |
| 1011 return has_reset_trigger; | 1008 return has_reset_trigger; |
| 1012 } | 1009 } |
| OLD | NEW |