Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(96)

Unified Diff: extensions/shell/browser/shell_browser_main_parts.cc

Issue 515573003: app_shell: Do simple audio initialization. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: wrap line Created 6 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: extensions/shell/browser/shell_browser_main_parts.cc
diff --git a/extensions/shell/browser/shell_browser_main_parts.cc b/extensions/shell/browser/shell_browser_main_parts.cc
index 24f7e02858f031fdec1351a30bf946e5c236b9ba..6a49ba5facd10900055895301627b542d36c6b13 100644
--- a/extensions/shell/browser/shell_browser_main_parts.cc
+++ b/extensions/shell/browser/shell_browser_main_parts.cc
@@ -29,7 +29,10 @@
#include "ui/base/resource/resource_bundle.h"
#if defined(OS_CHROMEOS)
+#include "chromeos/audio/cras_audio_handler.h"
#include "chromeos/dbus/dbus_thread_manager.h"
+#include "chromeos/network/network_handler.h"
+#include "extensions/shell/browser/shell_audio_controller_chromeos.h"
#include "extensions/shell/browser/shell_network_controller_chromeos.h"
#endif
@@ -42,17 +45,6 @@
using content::BrowserContext;
-namespace {
-
-// Register additional KeyedService factories here. See
-// ChromeBrowserMainExtraPartsProfiles for details.
-void EnsureBrowserContextKeyedServiceFactoriesBuilt() {
- extensions::EnsureBrowserContextKeyedServiceFactoriesBuilt();
- extensions::ShellExtensionSystemFactory::GetInstance();
-}
-
-} // namespace
-
namespace extensions {
ShellBrowserMainParts::ShellBrowserMainParts(
@@ -73,10 +65,19 @@ void ShellBrowserMainParts::PreMainMessageLoopStart() {
void ShellBrowserMainParts::PostMainMessageLoopStart() {
#if defined(OS_CHROMEOS)
+ // Perform initialization of D-Bus objects here rather than in the below
+ // helper classes so those classes' tests can initialize stub versions of the
+ // D-Bus objects.
chromeos::DBusThreadManager::Initialize();
+
+ chromeos::NetworkHandler::Initialize();
network_controller_.reset(new ShellNetworkController(
base::CommandLine::ForCurrentProcess()->GetSwitchValueNative(
switches::kAppShellPreferredNetwork)));
+
+ chromeos::CrasAudioHandler::Initialize(
+ new ShellAudioController::PrefHandler());
+ audio_controller_.reset(new ShellAudioController());
#else
// Non-Chrome OS platforms are for developer convenience, so use a test IME.
ui::InitializeInputMethodForTesting();
@@ -121,7 +122,11 @@ void ShellBrowserMainParts::PreMainMessageLoopRun() {
// TODO(yoz): Move this after EnsureBrowserContextKeyedServiceFactoriesBuilt.
CreateExtensionSystem();
- ::EnsureBrowserContextKeyedServiceFactoriesBuilt();
+ // Register additional KeyedService factories here. See
+ // ChromeBrowserMainExtraPartsProfiles for details.
+ EnsureBrowserContextKeyedServiceFactoriesBuilt();
+ ShellExtensionSystemFactory::GetInstance();
+
BrowserContextDependencyManager::GetInstance()->CreateBrowserContextServices(
browser_context_.get());
@@ -172,7 +177,10 @@ void ShellBrowserMainParts::PostMainMessageLoopRun() {
void ShellBrowserMainParts::PostDestroyThreads() {
#if defined(OS_CHROMEOS)
+ audio_controller_.reset();
+ chromeos::CrasAudioHandler::Shutdown();
network_controller_.reset();
+ chromeos::NetworkHandler::Shutdown();
chromeos::DBusThreadManager::Shutdown();
#endif
}
« no previous file with comments | « extensions/shell/browser/shell_browser_main_parts.h ('k') | extensions/shell/browser/shell_network_controller_chromeos.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698