| Index: ui/ozone/platform/drm/mus_thread_proxy.h
|
| diff --git a/ui/ozone/platform/drm/mus_thread_proxy.h b/ui/ozone/platform/drm/mus_thread_proxy.h
|
| index 054f73e2ad70882712db77a9dfefb2967c25c2c1..6aae4082c8e6542b2afebd8055c258d0458a23bc 100644
|
| --- a/ui/ozone/platform/drm/mus_thread_proxy.h
|
| +++ b/ui/ozone/platform/drm/mus_thread_proxy.h
|
| @@ -14,6 +14,7 @@
|
| #include "ui/ozone/platform/drm/gpu/inter_thread_messaging_proxy.h"
|
| #include "ui/ozone/platform/drm/host/drm_cursor.h"
|
| #include "ui/ozone/platform/drm/host/gpu_thread_adapter.h"
|
| +#include "ui/ozone/public/interfaces/device_cursor.mojom.h"
|
|
|
| namespace base {
|
| class SingleThreadTaskRunner;
|
| @@ -26,6 +27,24 @@ class DrmDisplayHostManager;
|
| class DrmOverlayManager;
|
| class DrmThread;
|
| class GpuThreadObserver;
|
| +class MusThreadProxy;
|
| +
|
| +// Forwarding proxy to handle ownership semantics.
|
| +class CursorProxyThread : public DrmCursorProxy {
|
| + public:
|
| + explicit CursorProxyThread(MusThreadProxy* mus_thread_proxy);
|
| + ~CursorProxyThread() override;
|
| +
|
| + private:
|
| + // DrmCursorProxy.
|
| + void CursorSet(gfx::AcceleratedWidget window,
|
| + const std::vector<SkBitmap>& bitmaps,
|
| + const gfx::Point& point,
|
| + int frame_delay_ms) override;
|
| + void Move(gfx::AcceleratedWidget window, const gfx::Point& point) override;
|
| + void InitializeOnEvdev() override;
|
| + MusThreadProxy* const mus_thread_proxy_; // Not owned.
|
| +};
|
|
|
| // In Mus, the window server thread (analogous to Chrome's UI thread), GPU and
|
| // DRM threads coexist in a single Mus process. The |MusThreadProxy| connects
|
|
|