Chromium Code Reviews| OLD | NEW |
|---|---|
| (Empty) | |
| 1 // Copyright 2016 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 #ifndef UI_OZONE_PLATFORM_DRM_CURSOR_PROXY_MOJO_H_ | |
| 6 #define UI_OZONE_PLATFORM_DRM_CURSOR_PROXY_MOJO_H_ | |
| 7 | |
| 8 #include "ui/gfx/native_widget_types.h" | |
| 9 #include "ui/ozone/platform/drm/gpu/inter_thread_messaging_proxy.h" | |
| 10 #include "ui/ozone/platform/drm/host/drm_cursor.h" | |
| 11 #include "ui/ozone/public/interfaces/cursor.mojom.h" | |
| 12 | |
| 13 namespace base { | |
| 14 class SingleThreadTaskRunner; | |
|
Tom Sepez
2016/07/19 16:14:38
nit: is this required? I didn't see it used in th
rjkroege
2016/07/21 01:10:41
Done.
| |
| 15 } | |
| 16 | |
| 17 namespace shell { | |
| 18 class Connector; | |
| 19 } | |
| 20 | |
| 21 namespace ui { | |
| 22 | |
| 23 // Ozone requires a IPC from the browser (or mus-ws) process to the gpu (or | |
| 24 // mus-gpu) process to control the mouse pointer. This class provides mouse | |
| 25 // pointer control via Mojo-style IPC. This code runs only in the mus-ws (i.e. | |
| 26 // it's the client) and sends mount pointer control messages to a less | |
|
Tom Sepez
2016/07/19 16:14:38
nit: mouse (sp)
rjkroege
2016/07/21 01:10:41
Done.
| |
| 27 // priviledged process. | |
| 28 class CursorProxyMojo : public DrmCursorProxy { | |
| 29 public: | |
| 30 CursorProxyMojo(shell::Connector* connector); | |
|
Tom Sepez
2016/07/19 16:14:38
nit: explicit
rjkroege
2016/07/21 01:10:41
Done.
| |
| 31 ~CursorProxyMojo() override; | |
| 32 | |
| 33 private: | |
| 34 // DrmCursorProxy. | |
| 35 void CursorSet(gfx::AcceleratedWidget window, | |
| 36 const std::vector<SkBitmap>& bitmaps, | |
| 37 const gfx::Point& point, | |
| 38 int frame_delay_ms) override; | |
| 39 void Move(gfx::AcceleratedWidget window, const gfx::Point& point) override; | |
| 40 void InitializeOnEvdev() override; | |
| 41 | |
| 42 std::unique_ptr<shell::Connector> connector_; | |
| 43 | |
| 44 // Mojo implementation of the DrmCursorProxy. | |
| 45 ui::ozone::mojom::CursorPtr main_cursor_ptr_; | |
| 46 ui::ozone::mojom::CursorPtr evdev_cursor_ptr_; | |
| 47 }; | |
| 48 | |
| 49 } // namespace ui | |
| 50 | |
| 51 #endif // UI_OZONE_PLATFORM_DRM_CURSOR_PROXY_MOJO_H_ | |
| OLD | NEW |