summaryrefslogtreecommitdiffstats
path: root/chrome/browser/chrome_browser_main_aura.cc
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser/chrome_browser_main_aura.cc')
-rw-r--r--chrome/browser/chrome_browser_main_aura.cc33
1 files changed, 31 insertions, 2 deletions
diff --git a/chrome/browser/chrome_browser_main_aura.cc b/chrome/browser/chrome_browser_main_aura.cc
index 3f1927f..90c6fa3 100644
--- a/chrome/browser/chrome_browser_main_aura.cc
+++ b/chrome/browser/chrome_browser_main_aura.cc
@@ -6,18 +6,47 @@
#include "base/logging.h"
+#if defined(OS_CHROMEOS)
+#include "base/command_line.h"
+#include "chrome/browser/chromeos/cros/cros_library.h"
+#include "chrome/browser/chromeos/dbus/dbus_thread_manager.h"
+#include "chrome/common/chrome_switches.h"
+#include "content/common/main_function_params.h"
+#endif
+
ChromeBrowserMainPartsAura::ChromeBrowserMainPartsAura(
const MainFunctionParams& parameters)
- : ChromeBrowserMainParts(parameters) {
+ : ChromeBrowserMainParts(parameters) {
NOTIMPLEMENTED();
}
+ChromeBrowserMainPartsAura::~ChromeBrowserMainPartsAura() {
+#if defined(OS_CHROMEOS)
+ chromeos::DBusThreadManager::Shutdown();
+ if (!parameters().ui_task && chromeos::CrosLibrary::Get())
+ chromeos::CrosLibrary::Shutdown();
+#endif
+}
+
void ChromeBrowserMainPartsAura::PreEarlyInitialization() {
NOTIMPLEMENTED();
}
+void ChromeBrowserMainPartsAura::PreMainMessageLoopStart() {
+#if defined(OS_CHROMEOS)
+ if (!parameters().ui_task) {
+ bool use_stub = parameters().command_line_.HasSwitch(switches::kStubCros);
+ chromeos::CrosLibrary::Initialize(use_stub);
+ }
+#endif
+}
+
void ChromeBrowserMainPartsAura::PostMainMessageLoopStart() {
- NOTIMPLEMENTED();
+#if defined(OS_CHROMEOS)
+ // Initialize DBusThreadManager for the browser. This must be done after
+ // the main message loop is started, as it uses the message loop.
+ chromeos::DBusThreadManager::Initialize();
+#endif
}
void ShowMissingLocaleMessageBox() {