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/shell.h" | 10 #include "ash/shell.h" |
11 #include "base/bind.h" | 11 #include "base/bind.h" |
12 #include "base/callback.h" | 12 #include "base/callback.h" |
13 #include "base/chromeos/chromeos_version.h" | 13 #include "base/chromeos/chromeos_version.h" |
14 #include "base/command_line.h" | 14 #include "base/command_line.h" |
15 #include "base/file_util.h" | 15 #include "base/file_util.h" |
16 #include "base/lazy_instance.h" | 16 #include "base/lazy_instance.h" |
17 #include "base/linux_util.h" | 17 #include "base/linux_util.h" |
18 #include "base/message_loop.h" | 18 #include "base/message_loop.h" |
19 #include "base/path_service.h" | 19 #include "base/path_service.h" |
20 #include "base/prefs/pref_service.h" | 20 #include "base/prefs/pref_service.h" |
21 #include "base/strings/string_number_conversions.h" | 21 #include "base/strings/string_number_conversions.h" |
22 #include "base/strings/string_split.h" | 22 #include "base/strings/string_split.h" |
23 #include "base/time/default_tick_clock.h" | 23 #include "base/time/default_tick_clock.h" |
24 #include "base/time/tick_clock.h" | 24 #include "base/time/tick_clock.h" |
25 #include "chrome/browser/browser_process.h" | 25 #include "chrome/browser/browser_process.h" |
26 #include "chrome/browser/chromeos/accessibility/accessibility_util.h" | 26 #include "chrome/browser/chromeos/accessibility/accessibility_manager.h" |
27 #include "chrome/browser/chromeos/accessibility/magnification_manager.h" | 27 #include "chrome/browser/chromeos/accessibility/magnification_manager.h" |
28 #include "chrome/browser/chromeos/app_mode/kiosk_app_launch_error.h" | 28 #include "chrome/browser/chromeos/app_mode/kiosk_app_launch_error.h" |
29 #include "chrome/browser/chromeos/app_mode/kiosk_app_launcher.h" | 29 #include "chrome/browser/chromeos/app_mode/kiosk_app_launcher.h" |
30 #include "chrome/browser/chromeos/app_mode/kiosk_app_manager.h" | 30 #include "chrome/browser/chromeos/app_mode/kiosk_app_manager.h" |
31 #include "chrome/browser/chromeos/audio/audio_handler.h" | 31 #include "chrome/browser/chromeos/audio/audio_handler.h" |
32 #include "chrome/browser/chromeos/boot_times_loader.h" | 32 #include "chrome/browser/chromeos/boot_times_loader.h" |
33 #include "chrome/browser/chromeos/contacts/contact_manager.h" | 33 #include "chrome/browser/chromeos/contacts/contact_manager.h" |
34 #include "chrome/browser/chromeos/cros/cros_library.h" | 34 #include "chrome/browser/chromeos/cros/cros_library.h" |
35 #include "chrome/browser/chromeos/dbus/cros_dbus_service.h" | 35 #include "chrome/browser/chromeos/dbus/cros_dbus_service.h" |
36 #include "chrome/browser/chromeos/display/display_configuration_observer.h" | 36 #include "chrome/browser/chromeos/display/display_configuration_observer.h" |
(...skipping 528 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
565 user_manager->SessionStarted(); | 565 user_manager->SessionStarted(); |
566 } | 566 } |
567 | 567 |
568 if (!app_order_loader_) { | 568 if (!app_order_loader_) { |
569 app_order_loader_.reset( | 569 app_order_loader_.reset( |
570 new default_app_order::ExternalLoader(true /* async */)); | 570 new default_app_order::ExternalLoader(true /* async */)); |
571 } | 571 } |
572 | 572 |
573 // Initialize magnification manager before ash tray is created. And this must | 573 // Initialize magnification manager before ash tray is created. And this must |
574 // be placed after UserManager::SessionStarted(); | 574 // be placed after UserManager::SessionStarted(); |
| 575 chromeos::AccessibilityManager::Initialize(); |
575 chromeos::MagnificationManager::Initialize(); | 576 chromeos::MagnificationManager::Initialize(); |
576 | 577 |
577 // Add observers for WallpaperManager. This depends on PowerManagerClient, | 578 // Add observers for WallpaperManager. This depends on PowerManagerClient, |
578 // TimezoneSettings and CrosSettings. | 579 // TimezoneSettings and CrosSettings. |
579 WallpaperManager::Get()->AddObservers(); | 580 WallpaperManager::Get()->AddObservers(); |
580 | 581 |
581 #if defined(USE_LINUX_BREAKPAD) | 582 #if defined(USE_LINUX_BREAKPAD) |
582 cros_version_loader_.GetVersion(VersionLoader::VERSION_FULL, | 583 cros_version_loader_.GetVersion(VersionLoader::VERSION_FULL, |
583 base::Bind(&ChromeOSVersionCallback), | 584 base::Bind(&ChromeOSVersionCallback), |
584 &tracker_); | 585 &tracker_); |
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
647 if (CommandLine::ForCurrentProcess()->HasSwitch( | 648 if (CommandLine::ForCurrentProcess()->HasSwitch( |
648 switches::kEnableScreensaverExtensions)) { | 649 switches::kEnableScreensaverExtensions)) { |
649 screensaver_controller_.reset(new ScreensaverController()); | 650 screensaver_controller_.reset(new ScreensaverController()); |
650 } | 651 } |
651 suspend_observer_.reset(new SuspendObserver()); | 652 suspend_observer_.reset(new SuspendObserver()); |
652 if (KioskModeSettings::Get()->IsKioskModeEnabled()) { | 653 if (KioskModeSettings::Get()->IsKioskModeEnabled()) { |
653 retail_mode_power_save_blocker_ = content::PowerSaveBlocker::Create( | 654 retail_mode_power_save_blocker_ = content::PowerSaveBlocker::Create( |
654 content::PowerSaveBlocker::kPowerSaveBlockPreventDisplaySleep, | 655 content::PowerSaveBlocker::kPowerSaveBlockPreventDisplaySleep, |
655 "Retail mode"); | 656 "Retail mode"); |
656 } | 657 } |
657 chromeos::accessibility::Initialize(); | |
658 | 658 |
659 peripheral_battery_observer_.reset(new PeripheralBatteryObserver()); | 659 peripheral_battery_observer_.reset(new PeripheralBatteryObserver()); |
660 | 660 |
661 storage_monitor_->Init(); | 661 storage_monitor_->Init(); |
662 | 662 |
663 // Initialize the network portal detector for Chrome OS. The network | 663 // Initialize the network portal detector for Chrome OS. The network |
664 // portal detector starts to listen for notifications from | 664 // portal detector starts to listen for notifications from |
665 // NetworkLibrary about changes in the NetworkManager and initiates | 665 // NetworkLibrary about changes in the NetworkManager and initiates |
666 // captive portal detection for active networks. | 666 // captive portal detection for active networks. |
667 NetworkPortalDetector* detector = NetworkPortalDetector::GetInstance(); | 667 NetworkPortalDetector* detector = NetworkPortalDetector::GetInstance(); |
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
788 | 788 |
789 // Detach D-Bus clients before DBusThreadManager is shut down. | 789 // Detach D-Bus clients before DBusThreadManager is shut down. |
790 power_button_observer_.reset(); | 790 power_button_observer_.reset(); |
791 screensaver_controller_.reset(); | 791 screensaver_controller_.reset(); |
792 idle_action_warning_observer_.reset(); | 792 idle_action_warning_observer_.reset(); |
793 | 793 |
794 // Delete ContactManager while |g_browser_process| is still alive. | 794 // Delete ContactManager while |g_browser_process| is still alive. |
795 contact_manager_.reset(); | 795 contact_manager_.reset(); |
796 | 796 |
797 chromeos::MagnificationManager::Shutdown(); | 797 chromeos::MagnificationManager::Shutdown(); |
| 798 chromeos::AccessibilityManager::Shutdown(); |
798 | 799 |
799 // Let the UserManager and WallpaperManager unregister itself as an observer | 800 // Let the UserManager and WallpaperManager unregister itself as an observer |
800 // of the CrosSettings singleton before it is destroyed. | 801 // of the CrosSettings singleton before it is destroyed. |
801 UserManager::Get()->Shutdown(); | 802 UserManager::Get()->Shutdown(); |
802 WallpaperManager::Get()->Shutdown(); | 803 WallpaperManager::Get()->Shutdown(); |
803 | 804 |
804 // Let the AutomaticRebootManager unregister itself as an observer of several | 805 // Let the AutomaticRebootManager unregister itself as an observer of several |
805 // subsystems. | 806 // subsystems. |
806 automatic_reboot_manager_.reset(); | 807 automatic_reboot_manager_.reset(); |
807 | 808 |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
862 trial->AppendGroup("4GB_RAM_4GB_swap", zram_group == '4' ? 1 : 0); | 863 trial->AppendGroup("4GB_RAM_4GB_swap", zram_group == '4' ? 1 : 0); |
863 trial->AppendGroup("4GB_RAM_6GB_swap", zram_group == '5' ? 1 : 0); | 864 trial->AppendGroup("4GB_RAM_6GB_swap", zram_group == '5' ? 1 : 0); |
864 trial->AppendGroup("snow_no_swap", zram_group == '6' ? 1 : 0); | 865 trial->AppendGroup("snow_no_swap", zram_group == '6' ? 1 : 0); |
865 trial->AppendGroup("snow_1GB_swap", zram_group == '7' ? 1 : 0); | 866 trial->AppendGroup("snow_1GB_swap", zram_group == '7' ? 1 : 0); |
866 trial->AppendGroup("snow_2GB_swap", zram_group == '8' ? 1 : 0); | 867 trial->AppendGroup("snow_2GB_swap", zram_group == '8' ? 1 : 0); |
867 // This is necessary to start the experiment as a side effect. | 868 // This is necessary to start the experiment as a side effect. |
868 trial->group(); | 869 trial->group(); |
869 } | 870 } |
870 | 871 |
871 } // namespace chromeos | 872 } // namespace chromeos |
OLD | NEW |