OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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/chromeos/chrome_browser_main_chromeos.h" | 5 #include "chrome/browser/chromeos/chrome_browser_main_chromeos.h" |
6 | 6 |
7 #include <string> | 7 #include <string> |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "ash/ash_switches.h" | 10 #include "ash/ash_switches.h" |
(...skipping 738 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
749 | 749 |
750 // Shut down services before the browser process, etc are destroyed. | 750 // Shut down services before the browser process, etc are destroyed. |
751 void ChromeBrowserMainPartsChromeos::PostMainMessageLoopRun() { | 751 void ChromeBrowserMainPartsChromeos::PostMainMessageLoopRun() { |
752 BootTimesLoader::Get()->AddLogoutTimeMarker("UIMessageLoopEnded", true); | 752 BootTimesLoader::Get()->AddLogoutTimeMarker("UIMessageLoopEnded", true); |
753 | 753 |
754 g_browser_process->platform_part()->oom_priority_manager()->Stop(); | 754 g_browser_process->platform_part()->oom_priority_manager()->Stop(); |
755 | 755 |
756 // Destroy the application name notifier for Kiosk mode. | 756 // Destroy the application name notifier for Kiosk mode. |
757 KioskModeIdleAppNameNotification::Shutdown(); | 757 KioskModeIdleAppNameNotification::Shutdown(); |
758 | 758 |
759 // Stops all in-flight OAuth2 token fetchers before the IO thread stops. | |
760 DeviceOAuth2TokenServiceFactory::Shutdown(); | |
761 | |
762 // Shutdown the upgrade detector for Chrome OS. The upgrade detector | 759 // Shutdown the upgrade detector for Chrome OS. The upgrade detector |
763 // stops monitoring changes from the update engine. | 760 // stops monitoring changes from the update engine. |
764 if (UpgradeDetectorChromeos::GetInstance()) | 761 if (UpgradeDetectorChromeos::GetInstance()) |
765 UpgradeDetectorChromeos::GetInstance()->Shutdown(); | 762 UpgradeDetectorChromeos::GetInstance()->Shutdown(); |
766 | 763 |
767 // Shutdown the network change notifier for Chrome OS. The network | 764 // Shutdown the network change notifier for Chrome OS. The network |
768 // change notifier stops monitoring changes from the power manager and | 765 // change notifier stops monitoring changes from the power manager and |
769 // the network manager. | 766 // the network manager. |
770 if (NetworkChangeNotifierFactoryChromeos::GetInstance()) | 767 if (NetworkChangeNotifierFactoryChromeos::GetInstance()) |
771 NetworkChangeNotifierFactoryChromeos::GetInstance()->Shutdown(); | 768 NetworkChangeNotifierFactoryChromeos::GetInstance()->Shutdown(); |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
828 // subsystems. | 825 // subsystems. |
829 g_browser_process->platform_part()->ShutdownAutomaticRebootManager(); | 826 g_browser_process->platform_part()->ShutdownAutomaticRebootManager(); |
830 | 827 |
831 // Clean up dependency on CrosSettings and stop pending data fetches. | 828 // Clean up dependency on CrosSettings and stop pending data fetches. |
832 KioskAppManager::Shutdown(); | 829 KioskAppManager::Shutdown(); |
833 | 830 |
834 // We first call PostMainMessageLoopRun and then destroy UserManager, because | 831 // We first call PostMainMessageLoopRun and then destroy UserManager, because |
835 // Ash needs to be closed before UserManager is destroyed. | 832 // Ash needs to be closed before UserManager is destroyed. |
836 ChromeBrowserMainPartsLinux::PostMainMessageLoopRun(); | 833 ChromeBrowserMainPartsLinux::PostMainMessageLoopRun(); |
837 | 834 |
| 835 // Stops all in-flight OAuth2 token fetchers before the IO thread stops. |
| 836 DeviceOAuth2TokenServiceFactory::Shutdown(); |
| 837 |
838 // Called after | 838 // Called after |
839 // ChromeBrowserMainPartsLinux::PostMainMessageLoopRun() to be | 839 // ChromeBrowserMainPartsLinux::PostMainMessageLoopRun() to be |
840 // executed after execution of chrome::CloseAsh(), because some | 840 // executed after execution of chrome::CloseAsh(), because some |
841 // parts of WebUI depends on NetworkPortalDetector. | 841 // parts of WebUI depends on NetworkPortalDetector. |
842 NetworkPortalDetector::Shutdown(); | 842 NetworkPortalDetector::Shutdown(); |
843 | 843 |
844 UserManager::Destroy(); | 844 UserManager::Destroy(); |
845 } | 845 } |
846 | 846 |
847 void ChromeBrowserMainPartsChromeos::PostDestroyThreads() { | 847 void ChromeBrowserMainPartsChromeos::PostDestroyThreads() { |
848 // Destroy DBus services immediately after threads are stopped. | 848 // Destroy DBus services immediately after threads are stopped. |
849 dbus_services_.reset(); | 849 dbus_services_.reset(); |
850 | 850 |
851 ChromeBrowserMainPartsLinux::PostDestroyThreads(); | 851 ChromeBrowserMainPartsLinux::PostDestroyThreads(); |
852 | 852 |
853 // Destroy DeviceSettingsService after g_browser_process. | 853 // Destroy DeviceSettingsService after g_browser_process. |
854 DeviceSettingsService::Shutdown(); | 854 DeviceSettingsService::Shutdown(); |
855 } | 855 } |
856 | 856 |
857 } // namespace chromeos | 857 } // namespace chromeos |
OLD | NEW |