| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "components/mus/ws/display_manager.h" | 5 #include "components/mus/ws/display_manager.h" |
| 6 | 6 |
| 7 #include "base/numerics/safe_conversions.h" | 7 #include "base/numerics/safe_conversions.h" |
| 8 #include "cc/output/compositor_frame.h" | 8 #include "cc/output/compositor_frame.h" |
| 9 #include "cc/output/delegated_frame_data.h" | 9 #include "cc/output/delegated_frame_data.h" |
| 10 #include "cc/quads/render_pass.h" | 10 #include "cc/quads/render_pass.h" |
| (...skipping 11 matching lines...) Expand all Loading... |
| 22 #include "components/mus/ws/window_coordinate_conversions.h" | 22 #include "components/mus/ws/window_coordinate_conversions.h" |
| 23 #include "mojo/application/public/cpp/application_connection.h" | 23 #include "mojo/application/public/cpp/application_connection.h" |
| 24 #include "mojo/application/public/cpp/application_impl.h" | 24 #include "mojo/application/public/cpp/application_impl.h" |
| 25 #include "mojo/converters/geometry/geometry_type_converters.h" | 25 #include "mojo/converters/geometry/geometry_type_converters.h" |
| 26 #include "mojo/converters/input_events/input_events_type_converters.h" | 26 #include "mojo/converters/input_events/input_events_type_converters.h" |
| 27 #include "mojo/converters/input_events/mojo_extended_key_event_data.h" | 27 #include "mojo/converters/input_events/mojo_extended_key_event_data.h" |
| 28 #include "mojo/converters/surfaces/surfaces_type_converters.h" | 28 #include "mojo/converters/surfaces/surfaces_type_converters.h" |
| 29 #include "mojo/converters/surfaces/surfaces_utils.h" | 29 #include "mojo/converters/surfaces/surfaces_utils.h" |
| 30 #include "mojo/converters/transform/transform_type_converters.h" | 30 #include "mojo/converters/transform/transform_type_converters.h" |
| 31 #include "third_party/skia/include/core/SkXfermode.h" | 31 #include "third_party/skia/include/core/SkXfermode.h" |
| 32 #include "ui/base/cursor/cursor_loader.h" |
| 32 #include "ui/events/event.h" | 33 #include "ui/events/event.h" |
| 33 #include "ui/events/event_utils.h" | 34 #include "ui/events/event_utils.h" |
| 34 #include "ui/gfx/display.h" | 35 #include "ui/gfx/display.h" |
| 35 #include "ui/platform_window/platform_ime_controller.h" | 36 #include "ui/platform_window/platform_ime_controller.h" |
| 36 #include "ui/platform_window/platform_window.h" | 37 #include "ui/platform_window/platform_window.h" |
| 37 | 38 |
| 38 #if defined(OS_WIN) | 39 #if defined(OS_WIN) |
| 39 #include "ui/platform_window/win/win_window.h" | 40 #include "ui/platform_window/win/win_window.h" |
| 40 #elif defined(USE_X11) | 41 #elif defined(USE_X11) |
| 41 #include "ui/platform_window/x11/x11_window.h" | 42 #include "ui/platform_window/x11/x11_window.h" |
| (...skipping 121 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 163 DefaultDisplayManager::DefaultDisplayManager( | 164 DefaultDisplayManager::DefaultDisplayManager( |
| 164 mojo::ApplicationImpl* app_impl, | 165 mojo::ApplicationImpl* app_impl, |
| 165 const scoped_refptr<GpuState>& gpu_state, | 166 const scoped_refptr<GpuState>& gpu_state, |
| 166 const scoped_refptr<SurfacesState>& surfaces_state) | 167 const scoped_refptr<SurfacesState>& surfaces_state) |
| 167 : app_impl_(app_impl), | 168 : app_impl_(app_impl), |
| 168 gpu_state_(gpu_state), | 169 gpu_state_(gpu_state), |
| 169 surfaces_state_(surfaces_state), | 170 surfaces_state_(surfaces_state), |
| 170 delegate_(nullptr), | 171 delegate_(nullptr), |
| 171 draw_timer_(false, false), | 172 draw_timer_(false, false), |
| 172 frame_pending_(false), | 173 frame_pending_(false), |
| 174 #if !defined(OS_ANDROID) |
| 175 cursor_loader_(ui::CursorLoader::Create()), |
| 176 #endif |
| 173 weak_factory_(this) { | 177 weak_factory_(this) { |
| 174 metrics_.size_in_pixels = mojo::Size::New(); | 178 metrics_.size_in_pixels = mojo::Size::New(); |
| 175 metrics_.size_in_pixels->width = 1024; | 179 metrics_.size_in_pixels->width = 1024; |
| 176 metrics_.size_in_pixels->height = 768; | 180 metrics_.size_in_pixels->height = 768; |
| 177 } | 181 } |
| 178 | 182 |
| 179 void DefaultDisplayManager::Init(DisplayManagerDelegate* delegate) { | 183 void DefaultDisplayManager::Init(DisplayManagerDelegate* delegate) { |
| 180 delegate_ = delegate; | 184 delegate_ = delegate; |
| 181 | 185 |
| 182 gfx::Rect bounds(metrics_.size_in_pixels.To<gfx::Size>()); | 186 gfx::Rect bounds(metrics_.size_in_pixels.To<gfx::Size>()); |
| (...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 219 } | 223 } |
| 220 | 224 |
| 221 void DefaultDisplayManager::SetViewportSize(const gfx::Size& size) { | 225 void DefaultDisplayManager::SetViewportSize(const gfx::Size& size) { |
| 222 platform_window_->SetBounds(gfx::Rect(size)); | 226 platform_window_->SetBounds(gfx::Rect(size)); |
| 223 } | 227 } |
| 224 | 228 |
| 225 void DefaultDisplayManager::SetTitle(const base::string16& title) { | 229 void DefaultDisplayManager::SetTitle(const base::string16& title) { |
| 226 platform_window_->SetTitle(title); | 230 platform_window_->SetTitle(title); |
| 227 } | 231 } |
| 228 | 232 |
| 233 void DefaultDisplayManager::SetCursorById(int32_t cursor_id) { |
| 234 #if !defined(OS_ANDROID) |
| 235 // TODO(erg): This still isn't sufficient, and will only use native cursors |
| 236 // that chrome would use, not custom image cursors. For that, we should |
| 237 // delegate to the window manager to load images from resource packs. |
| 238 // |
| 239 // We probably also need to deal with different DPIs. |
| 240 ui::Cursor cursor(cursor_id); |
| 241 cursor_loader_->SetPlatformCursor(&cursor); |
| 242 platform_window_->SetCursor(cursor.platform()); |
| 243 #endif |
| 244 } |
| 245 |
| 229 const mojom::ViewportMetrics& DefaultDisplayManager::GetViewportMetrics() { | 246 const mojom::ViewportMetrics& DefaultDisplayManager::GetViewportMetrics() { |
| 230 return metrics_; | 247 return metrics_; |
| 231 } | 248 } |
| 232 | 249 |
| 233 void DefaultDisplayManager::UpdateTextInputState( | 250 void DefaultDisplayManager::UpdateTextInputState( |
| 234 const ui::TextInputState& state) { | 251 const ui::TextInputState& state) { |
| 235 ui::PlatformImeController* ime = platform_window_->GetPlatformImeController(); | 252 ui::PlatformImeController* ime = platform_window_->GetPlatformImeController(); |
| 236 if (ime) | 253 if (ime) |
| 237 ime->UpdateTextInputState(state); | 254 ime->UpdateTextInputState(state); |
| 238 } | 255 } |
| (...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 399 | 416 |
| 400 void DefaultDisplayManager::OnAcceleratedWidgetDestroyed() { | 417 void DefaultDisplayManager::OnAcceleratedWidgetDestroyed() { |
| 401 NOTREACHED(); | 418 NOTREACHED(); |
| 402 } | 419 } |
| 403 | 420 |
| 404 void DefaultDisplayManager::OnActivationChanged(bool active) {} | 421 void DefaultDisplayManager::OnActivationChanged(bool active) {} |
| 405 | 422 |
| 406 } // namespace ws | 423 } // namespace ws |
| 407 | 424 |
| 408 } // namespace mus | 425 } // namespace mus |
| OLD | NEW |