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 114 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
125 #if defined(USE_X11) | 125 #if defined(USE_X11) |
126 #include "chrome/browser/chromeos/device_uma.h" | 126 #include "chrome/browser/chromeos/device_uma.h" |
127 #include "chrome/browser/chromeos/events/system_key_event_listener.h" | 127 #include "chrome/browser/chromeos/events/system_key_event_listener.h" |
128 #include "chrome/browser/chromeos/events/xinput_hierarchy_changed_event_listener .h" | 128 #include "chrome/browser/chromeos/events/xinput_hierarchy_changed_event_listener .h" |
129 #endif | 129 #endif |
130 | 130 |
131 namespace chromeos { | 131 namespace chromeos { |
132 | 132 |
133 namespace { | 133 namespace { |
134 | 134 |
135 // TODO(chirantan): These are used by a temporary workaround for lucid sleep and | |
136 // should be removed once the proper implementation is ready (crbug.com/414949). | |
137 const char kDarkResumeAlwaysFile[] = "/sys/power/dark_resume_always"; | |
138 const char kEnableDarkResumeAlways[] = "1"; | |
139 | |
135 void ChromeOSVersionCallback(const std::string& version) { | 140 void ChromeOSVersionCallback(const std::string& version) { |
136 base::SetLinuxDistro(std::string("CrOS ") + version); | 141 base::SetLinuxDistro(std::string("CrOS ") + version); |
137 } | 142 } |
138 | 143 |
139 bool ShouldAutoLaunchKioskApp(const base::CommandLine& command_line) { | 144 bool ShouldAutoLaunchKioskApp(const base::CommandLine& command_line) { |
140 KioskAppManager* app_manager = KioskAppManager::Get(); | 145 KioskAppManager* app_manager = KioskAppManager::Get(); |
141 return command_line.HasSwitch(switches::kLoginManager) && | 146 return command_line.HasSwitch(switches::kLoginManager) && |
142 !command_line.HasSwitch(switches::kForceLoginManagerInTests) && | 147 !command_line.HasSwitch(switches::kForceLoginManagerInTests) && |
143 app_manager->IsAutoLaunchEnabled() && | 148 app_manager->IsAutoLaunchEnabled() && |
144 KioskAppLaunchError::Get() == KioskAppLaunchError::NONE; | 149 KioskAppLaunchError::Get() == KioskAppLaunchError::NONE; |
(...skipping 414 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
559 retail_mode_power_save_blocker_ = content::PowerSaveBlocker::Create( | 564 retail_mode_power_save_blocker_ = content::PowerSaveBlocker::Create( |
560 content::PowerSaveBlocker::kPowerSaveBlockPreventDisplaySleep, | 565 content::PowerSaveBlocker::kPowerSaveBlockPreventDisplaySleep, |
561 "Retail mode"); | 566 "Retail mode"); |
562 } | 567 } |
563 | 568 |
564 peripheral_battery_observer_.reset(new PeripheralBatteryObserver()); | 569 peripheral_battery_observer_.reset(new PeripheralBatteryObserver()); |
565 | 570 |
566 renderer_freezer_.reset( | 571 renderer_freezer_.reset( |
567 new RendererFreezer(scoped_ptr<RendererFreezer::Delegate>( | 572 new RendererFreezer(scoped_ptr<RendererFreezer::Delegate>( |
568 new FreezerCgroupProcessManager()))); | 573 new FreezerCgroupProcessManager()))); |
569 if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kWakeOnPackets)) | 574 if (CommandLine::ForCurrentProcess()->HasSwitch(switches::kWakeOnPackets)) { |
570 light_bar_.reset(new LightBar()); | 575 light_bar_.reset(new LightBar()); |
571 | 576 |
577 // Until the kernel can properly detect the wakeup source, we need to use a | |
578 // hack to tell the kernel to always enter dark resume. Chrome can then | |
579 // detect any user activity and have the power manager transition out of | |
580 // dark resume into regular resume. We don't care if the write succeeds or | |
581 // not because most devices will not have this file. | |
582 // | |
583 // TODO(chirantan): Remove this once we can properly detect the wakeup | |
584 // source (crbug.com/414949). | |
585 base::WriteFile(base::FilePath(kDarkResumeAlwaysFile), | |
Daniel Erat
2014/09/21 14:49:31
can you put this somewhere else instead of chrome_
| |
586 kEnableDarkResumeAlways, | |
587 strlen(kEnableDarkResumeAlways)); | |
588 } | |
589 | |
572 g_browser_process->platform_part()->InitializeAutomaticRebootManager(); | 590 g_browser_process->platform_part()->InitializeAutomaticRebootManager(); |
573 | 591 |
574 // This observer cannot be created earlier because it requires the shell to be | 592 // This observer cannot be created earlier because it requires the shell to be |
575 // available. | 593 // available. |
576 idle_action_warning_observer_.reset(new IdleActionWarningObserver()); | 594 idle_action_warning_observer_.reset(new IdleActionWarningObserver()); |
577 | 595 |
578 ChromeBrowserMainPartsLinux::PostProfileInit(); | 596 ChromeBrowserMainPartsLinux::PostProfileInit(); |
579 } | 597 } |
580 | 598 |
581 void ChromeBrowserMainPartsChromeos::PreBrowserStart() { | 599 void ChromeBrowserMainPartsChromeos::PreBrowserStart() { |
(...skipping 184 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
766 // Destroy DBus services immediately after threads are stopped. | 784 // Destroy DBus services immediately after threads are stopped. |
767 dbus_services_.reset(); | 785 dbus_services_.reset(); |
768 | 786 |
769 ChromeBrowserMainPartsLinux::PostDestroyThreads(); | 787 ChromeBrowserMainPartsLinux::PostDestroyThreads(); |
770 | 788 |
771 // Destroy DeviceSettingsService after g_browser_process. | 789 // Destroy DeviceSettingsService after g_browser_process. |
772 DeviceSettingsService::Shutdown(); | 790 DeviceSettingsService::Shutdown(); |
773 } | 791 } |
774 | 792 |
775 } // namespace chromeos | 793 } // namespace chromeos |
OLD | NEW |