| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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/ui/views/chrome_browser_main_extra_parts_views.h" | 5 #include "chrome/browser/ui/views/chrome_browser_main_extra_parts_views.h" |
| 6 | 6 |
| 7 #include "base/memory/ptr_util.h" | 7 #include "base/memory/ptr_util.h" |
| 8 #include "chrome/browser/ui/views/chrome_constrained_window_views_client.h" | 8 #include "chrome/browser/ui/views/chrome_constrained_window_views_client.h" |
| 9 #include "chrome/browser/ui/views/chrome_views_delegate.h" | 9 #include "chrome/browser/ui/views/chrome_views_delegate.h" |
| 10 #include "chrome/browser/ui/views/ime_driver/ime_driver_mus.h" | 10 #include "chrome/browser/ui/views/ime_driver/ime_driver_mus.h" |
| (...skipping 17 matching lines...) Expand all Loading... |
| 28 | 28 |
| 29 #if defined(OS_LINUX) && !defined(OS_CHROMEOS) | 29 #if defined(OS_LINUX) && !defined(OS_CHROMEOS) |
| 30 #include "base/command_line.h" | 30 #include "base/command_line.h" |
| 31 #include "chrome/browser/ui/simple_message_box.h" | 31 #include "chrome/browser/ui/simple_message_box.h" |
| 32 #include "chrome/grit/chromium_strings.h" | 32 #include "chrome/grit/chromium_strings.h" |
| 33 #include "chrome/grit/generated_resources.h" | 33 #include "chrome/grit/generated_resources.h" |
| 34 #include "content/public/common/content_switches.h" | 34 #include "content/public/common/content_switches.h" |
| 35 #include "ui/base/l10n/l10n_util.h" | 35 #include "ui/base/l10n/l10n_util.h" |
| 36 #endif // defined(OS_LINUX) && !defined(OS_CHROMEOS) | 36 #endif // defined(OS_LINUX) && !defined(OS_CHROMEOS) |
| 37 | 37 |
| 38 #if defined(OS_CHROMEOS) |
| 39 #include "chrome/browser/chromeos/ash_config.h" |
| 40 #endif |
| 41 |
| 42 namespace { |
| 43 |
| 44 #if defined(USE_AURA) |
| 45 bool ShouldCreateWMState() { |
| 46 #if defined(OS_CHROMEOS) |
| 47 return chromeos::GetConfig() != ash::Config::MUS; |
| 48 #else |
| 49 return true; |
| 50 #endif |
| 51 } |
| 52 #endif |
| 53 |
| 54 } // namespace |
| 55 |
| 38 ChromeBrowserMainExtraPartsViews::ChromeBrowserMainExtraPartsViews() { | 56 ChromeBrowserMainExtraPartsViews::ChromeBrowserMainExtraPartsViews() { |
| 39 } | 57 } |
| 40 | 58 |
| 41 ChromeBrowserMainExtraPartsViews::~ChromeBrowserMainExtraPartsViews() { | 59 ChromeBrowserMainExtraPartsViews::~ChromeBrowserMainExtraPartsViews() { |
| 42 constrained_window::SetConstrainedWindowViewsClient(nullptr); | 60 constrained_window::SetConstrainedWindowViewsClient(nullptr); |
| 43 } | 61 } |
| 44 | 62 |
| 45 void ChromeBrowserMainExtraPartsViews::ToolkitInitialized() { | 63 void ChromeBrowserMainExtraPartsViews::ToolkitInitialized() { |
| 46 // The delegate needs to be set before any UI is created so that windows | 64 // The delegate needs to be set before any UI is created so that windows |
| 47 // display the correct icon. | 65 // display the correct icon. |
| 48 if (!views::ViewsDelegate::GetInstance()) | 66 if (!views::ViewsDelegate::GetInstance()) |
| 49 views_delegate_.reset(new ChromeViewsDelegate); | 67 views_delegate_.reset(new ChromeViewsDelegate); |
| 50 | 68 |
| 51 SetConstrainedWindowViewsClient(CreateChromeConstrainedWindowViewsClient()); | 69 SetConstrainedWindowViewsClient(CreateChromeConstrainedWindowViewsClient()); |
| 52 | 70 |
| 53 #if defined(USE_AURA) | 71 #if defined(USE_AURA) |
| 54 wm_state_.reset(new wm::WMState); | 72 if (ShouldCreateWMState()) |
| 73 wm_state_.reset(new wm::WMState); |
| 55 #endif | 74 #endif |
| 56 } | 75 } |
| 57 | 76 |
| 58 void ChromeBrowserMainExtraPartsViews::PreCreateThreads() { | 77 void ChromeBrowserMainExtraPartsViews::PreCreateThreads() { |
| 59 #if defined(USE_AURA) && !defined(OS_CHROMEOS) && !defined(USE_OZONE) | 78 #if defined(USE_AURA) && !defined(OS_CHROMEOS) && !defined(USE_OZONE) |
| 60 // The screen may have already been set in test initialization. | 79 // The screen may have already been set in test initialization. |
| 61 if (!display::Screen::GetScreen()) | 80 if (!display::Screen::GetScreen()) |
| 62 display::Screen::SetScreenInstance(views::CreateDesktopScreen()); | 81 display::Screen::SetScreenInstance(views::CreateDesktopScreen()); |
| 63 #endif | 82 #endif |
| 64 } | 83 } |
| (...skipping 29 matching lines...) Expand all Loading... |
| 94 base::RunLoop().RunUntilIdle(); | 113 base::RunLoop().RunUntilIdle(); |
| 95 | 114 |
| 96 exit(EXIT_FAILURE); | 115 exit(EXIT_FAILURE); |
| 97 #endif // defined(OS_LINUX) && !defined(OS_CHROMEOS) | 116 #endif // defined(OS_LINUX) && !defined(OS_CHROMEOS) |
| 98 } | 117 } |
| 99 | 118 |
| 100 void ChromeBrowserMainExtraPartsViews::ServiceManagerConnectionStarted( | 119 void ChromeBrowserMainExtraPartsViews::ServiceManagerConnectionStarted( |
| 101 content::ServiceManagerConnection* connection) { | 120 content::ServiceManagerConnection* connection) { |
| 102 DCHECK(connection); | 121 DCHECK(connection); |
| 103 #if defined(USE_AURA) | 122 #if defined(USE_AURA) |
| 104 if (service_manager::ServiceManagerIsRemote()) { | 123 if (!service_manager::ServiceManagerIsRemote()) |
| 105 input_device_client_.reset(new ui::InputDeviceClient()); | 124 return; |
| 106 ui::mojom::InputDeviceServerPtr server; | |
| 107 connection->GetConnector()->BindInterface(ui::mojom::kServiceName, &server); | |
| 108 input_device_client_->Connect(std::move(server)); | |
| 109 | 125 |
| 110 // WMState is owned as a member, so don't have MusClient create it. | 126 input_device_client_ = base::MakeUnique<ui::InputDeviceClient>(); |
| 111 const bool create_wm_state = false; | 127 ui::mojom::InputDeviceServerPtr server; |
| 112 mus_client_ = base::MakeUnique<views::MusClient>( | 128 connection->GetConnector()->BindInterface(ui::mojom::kServiceName, &server); |
| 113 connection->GetConnector(), service_manager::Identity(), | 129 input_device_client_->Connect(std::move(server)); |
| 114 content::BrowserThread::GetTaskRunnerForThread( | 130 |
| 115 content::BrowserThread::IO), | 131 #if defined(OS_CHROMEOS) |
| 116 create_wm_state); | 132 if (chromeos::GetConfig() != ash::Config::MASH) |
| 117 } | 133 return; |
| 134 #endif |
| 135 |
| 136 // WMState is owned as a member, so don't have MusClient create it. |
| 137 const bool create_wm_state = false; |
| 138 mus_client_ = base::MakeUnique<views::MusClient>( |
| 139 connection->GetConnector(), service_manager::Identity(), |
| 140 content::BrowserThread::GetTaskRunnerForThread( |
| 141 content::BrowserThread::IO), |
| 142 create_wm_state); |
| 118 #endif // defined(USE_AURA) | 143 #endif // defined(USE_AURA) |
| 119 } | 144 } |
| OLD | NEW |