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 254 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
265 // KioskAppLauncher deletes itself when done. | 265 // KioskAppLauncher deletes itself when done. |
266 (new KioskAppLauncher( | 266 (new KioskAppLauncher( |
267 KioskAppManager::Get()->GetAutoLaunchApp()))->Start(); | 267 KioskAppManager::Get()->GetAutoLaunchApp()))->Start(); |
268 | 268 |
269 // Login screen is skipped but 'login-prompt-visible' signal is still needed. | 269 // Login screen is skipped but 'login-prompt-visible' signal is still needed. |
270 LOG(INFO) << "Kiosk app auto launch >> login-prompt-visible"; | 270 LOG(INFO) << "Kiosk app auto launch >> login-prompt-visible"; |
271 chromeos::DBusThreadManager::Get()->GetSessionManagerClient()-> | 271 chromeos::DBusThreadManager::Get()->GetSessionManagerClient()-> |
272 EmitLoginPromptVisible(); | 272 EmitLoginPromptVisible(); |
273 } | 273 } |
274 | 274 |
| 275 bool UseNewAudioHandler() { |
| 276 return !CommandLine::ForCurrentProcess()-> |
| 277 HasSwitch(ash::switches::kAshDisableNewAudioHandler); |
| 278 } |
| 279 |
275 } // namespace | 280 } // namespace |
276 | 281 |
277 namespace internal { | 282 namespace internal { |
278 | 283 |
279 // Wrapper class for initializing dbus related services and shutting them | 284 // Wrapper class for initializing dbus related services and shutting them |
280 // down. This gets instantiated in a scoped_ptr so that shutdown methods in the | 285 // down. This gets instantiated in a scoped_ptr so that shutdown methods in the |
281 // destructor will get called if and only if this has been instantiated. | 286 // destructor will get called if and only if this has been instantiated. |
282 class DBusServices { | 287 class DBusServices { |
283 public: | 288 public: |
284 explicit DBusServices(const content::MainFunctionParams& parameters) | 289 explicit DBusServices(const content::MainFunctionParams& parameters) |
(...skipping 180 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
465 message_loop->AddObserver(g_message_loop_observer.Pointer()); | 470 message_loop->AddObserver(g_message_loop_observer.Pointer()); |
466 | 471 |
467 dbus_services_.reset(new internal::DBusServices(parameters())); | 472 dbus_services_.reset(new internal::DBusServices(parameters())); |
468 | 473 |
469 ChromeBrowserMainPartsLinux::PostMainMessageLoopStart(); | 474 ChromeBrowserMainPartsLinux::PostMainMessageLoopStart(); |
470 } | 475 } |
471 | 476 |
472 // Threads are initialized between MainMessageLoopStart and MainMessageLoopRun. | 477 // Threads are initialized between MainMessageLoopStart and MainMessageLoopRun. |
473 // about_flags settings are applied in ChromeBrowserMainParts::PreCreateThreads. | 478 // about_flags settings are applied in ChromeBrowserMainParts::PreCreateThreads. |
474 void ChromeBrowserMainPartsChromeos::PreMainMessageLoopRun() { | 479 void ChromeBrowserMainPartsChromeos::PreMainMessageLoopRun() { |
475 if (CommandLine::ForCurrentProcess()-> | 480 if (UseNewAudioHandler()) { |
476 HasSwitch(ash::switches::kAshEnableNewAudioHandler)) { | |
477 CrasAudioHandler::Initialize( | 481 CrasAudioHandler::Initialize( |
478 AudioPrefHandler::Create(g_browser_process->local_state())); | 482 AudioPrefHandler::Create(g_browser_process->local_state())); |
479 } else { | 483 } else { |
480 AudioHandler::Initialize( | 484 AudioHandler::Initialize( |
481 AudioPrefHandler::Create(g_browser_process->local_state())); | 485 AudioPrefHandler::Create(g_browser_process->local_state())); |
482 } | 486 } |
483 | 487 |
484 if (!StartupUtils::IsOobeCompleted()) | 488 if (!StartupUtils::IsOobeCompleted()) |
485 system::StatisticsProvider::GetInstance()->LoadOemManifest(); | 489 system::StatisticsProvider::GetInstance()->LoadOemManifest(); |
486 | 490 |
(...skipping 293 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
780 peripheral_battery_observer_.reset(); | 784 peripheral_battery_observer_.reset(); |
781 | 785 |
782 // The XInput2 event listener needs to be shut down earlier than when | 786 // The XInput2 event listener needs to be shut down earlier than when |
783 // Singletons are finally destroyed in AtExitManager. | 787 // Singletons are finally destroyed in AtExitManager. |
784 XInputHierarchyChangedEventListener::GetInstance()->Stop(); | 788 XInputHierarchyChangedEventListener::GetInstance()->Stop(); |
785 | 789 |
786 // chromeos::SystemKeyEventListener::Shutdown() is always safe to call, | 790 // chromeos::SystemKeyEventListener::Shutdown() is always safe to call, |
787 // even if Initialize() wasn't called. | 791 // even if Initialize() wasn't called. |
788 SystemKeyEventListener::Shutdown(); | 792 SystemKeyEventListener::Shutdown(); |
789 imageburner::BurnManager::Shutdown(); | 793 imageburner::BurnManager::Shutdown(); |
790 if (CommandLine::ForCurrentProcess()-> | 794 if (UseNewAudioHandler()) { |
791 HasSwitch(ash::switches::kAshEnableNewAudioHandler)) { | |
792 CrasAudioHandler::Shutdown(); | 795 CrasAudioHandler::Shutdown(); |
793 } else { | 796 } else { |
794 AudioHandler::Shutdown(); | 797 AudioHandler::Shutdown(); |
795 } | 798 } |
796 | 799 |
797 WebSocketProxyController::Shutdown(); | 800 WebSocketProxyController::Shutdown(); |
798 | 801 |
799 // Let classes unregister themselves as observers of the ash::Shell singleton | 802 // Let classes unregister themselves as observers of the ash::Shell singleton |
800 // before the shell is destroyed. | 803 // before the shell is destroyed. |
801 user_activity_notifier_.reset(); | 804 user_activity_notifier_.reset(); |
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
878 trial->AppendGroup("4GB_RAM_4GB_swap", zram_group == '4' ? 1 : 0); | 881 trial->AppendGroup("4GB_RAM_4GB_swap", zram_group == '4' ? 1 : 0); |
879 trial->AppendGroup("4GB_RAM_6GB_swap", zram_group == '5' ? 1 : 0); | 882 trial->AppendGroup("4GB_RAM_6GB_swap", zram_group == '5' ? 1 : 0); |
880 trial->AppendGroup("snow_no_swap", zram_group == '6' ? 1 : 0); | 883 trial->AppendGroup("snow_no_swap", zram_group == '6' ? 1 : 0); |
881 trial->AppendGroup("snow_1GB_swap", zram_group == '7' ? 1 : 0); | 884 trial->AppendGroup("snow_1GB_swap", zram_group == '7' ? 1 : 0); |
882 trial->AppendGroup("snow_2GB_swap", zram_group == '8' ? 1 : 0); | 885 trial->AppendGroup("snow_2GB_swap", zram_group == '8' ? 1 : 0); |
883 // This is necessary to start the experiment as a side effect. | 886 // This is necessary to start the experiment as a side effect. |
884 trial->group(); | 887 trial->group(); |
885 } | 888 } |
886 | 889 |
887 } // namespace chromeos | 890 } // namespace chromeos |
OLD | NEW |