Index: chrome/browser/chrome_browser_main_aura.cc |
diff --git a/chrome/browser/chrome_browser_main_aura.cc b/chrome/browser/chrome_browser_main_aura.cc |
index 3f1927fa752936adf166a65e3d6d51b274d3b84f..90c6fa3f4facf1bb99eee40b75454212854c8e33 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() { |