Chromium Code Reviews| Index: chrome/browser/ui/aura/chrome_browser_main_extra_parts_aura.cc |
| diff --git a/chrome/browser/ui/aura/chrome_browser_main_extra_parts_aura.cc b/chrome/browser/ui/aura/chrome_browser_main_extra_parts_aura.cc |
| index f73d3b2e899e3eb890a37b247857b8e238b66483..5a861f7d7af5e9f77318b957b4edd661f396bccf 100644 |
| --- a/chrome/browser/ui/aura/chrome_browser_main_extra_parts_aura.cc |
| +++ b/chrome/browser/ui/aura/chrome_browser_main_extra_parts_aura.cc |
| @@ -20,8 +20,8 @@ |
| #if defined(OS_LINUX) && !defined(OS_CHROMEOS) |
| #include "chrome/browser/ui/libgtk2ui/gtk2_ui.h" |
| +#include "ui/base/ime/input_method_initializer.h" |
| #include "ui/views/linux_ui/linux_ui.h" |
| -#else |
| #endif |
| #if defined(USE_ASH) |
| @@ -47,7 +47,13 @@ chrome::HostDesktopType GetInitialDesktop() { |
| command_line->HasSwitch(switches::kViewerLaunchViaAppId)) { |
| return chrome::HOST_DESKTOP_TYPE_ASH; |
| } |
| +#elif defined(OS_LINUX) |
| + const CommandLine* command_line = CommandLine::ForCurrentProcess(); |
| + if (command_line->HasSwitch(switches::kOpenAsh)) { |
|
sky
2014/04/24 23:14:32
nit: no {}
|
| + return chrome::HOST_DESKTOP_TYPE_ASH; |
| + } |
| #endif |
| + |
| return chrome::HOST_DESKTOP_TYPE_NATIVE; |
| } |
| #endif // !defined(OS_CHROMEOS) && defined(USE_ASH) |
| @@ -61,9 +67,13 @@ ChromeBrowserMainExtraPartsAura::~ChromeBrowserMainExtraPartsAura() { |
| } |
| void ChromeBrowserMainExtraPartsAura::PreEarlyInitialization() { |
| -#if !defined(USE_ASH) && defined(OS_LINUX) && defined(USE_X11) |
| - // TODO(erg): Refactor this into a dlopen call when we add a GTK3 port. |
| - views::LinuxUI::SetInstance(BuildGtk2UI()); |
| +#if defined(OS_LINUX) && !defined(OS_CHROMEOS) |
| + if (GetInitialDesktop() != chrome::HOST_DESKTOP_TYPE_ASH) { |
| + // TODO(erg): Refactor this into a dlopen call when we add a GTK3 port. |
| + views::LinuxUI::SetInstance(BuildGtk2UI()); |
| + } else { |
| + ui::InitializeInputMethodForTesting(); |
| + } |
| #endif |
| } |
| @@ -75,8 +85,9 @@ void ChromeBrowserMainExtraPartsAura::ToolkitInitialized() { |
| #endif |
| #endif |
| -#if !defined(USE_ASH) && defined(OS_LINUX) && defined(USE_X11) |
| - views::LinuxUI::instance()->Initialize(); |
| +#if defined(OS_LINUX) && !defined(OS_CHROMEOS) |
| + if (GetInitialDesktop() != chrome::HOST_DESKTOP_TYPE_ASH) |
| + views::LinuxUI::instance()->Initialize(); |
| #endif |
| } |