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 #ifndef UI_OZONE_PLATFORM_DRM_HOST_DRM_WINDOW_HOST_H_ | 5 #ifndef UI_OZONE_PLATFORM_DRM_HOST_DRM_WINDOW_HOST_H_ |
6 #define UI_OZONE_PLATFORM_DRM_HOST_DRM_WINDOW_HOST_H_ | 6 #define UI_OZONE_PLATFORM_DRM_HOST_DRM_WINDOW_HOST_H_ |
7 | 7 |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <memory> | 10 #include <memory> |
11 | 11 |
12 #include "base/macros.h" | 12 #include "base/macros.h" |
13 #include "ui/display/types/display_snapshot.h" | 13 #include "ui/display/types/display_snapshot.h" |
14 #include "ui/events/platform/platform_event_dispatcher.h" | 14 #include "ui/events/platform/platform_event_dispatcher.h" |
15 #include "ui/gfx/geometry/rect.h" | 15 #include "ui/gfx/geometry/rect.h" |
16 #include "ui/gfx/native_widget_types.h" | 16 #include "ui/gfx/native_widget_types.h" |
17 #include "ui/ozone/platform/drm/host/gpu_thread_observer.h" | 17 #include "ui/ozone/platform/drm/host/gpu_thread_observer.h" |
18 #include "ui/platform_window/platform_window.h" | 18 #include "ui/platform_window/platform_window.h" |
19 | 19 |
20 namespace ui { | 20 namespace ui { |
21 | 21 |
22 class DrmDisplayHostManager; | 22 class DrmDisplayHostManager; |
23 class DrmCursor; | 23 class DrmCursor; |
24 class DrmGpuWindow; | |
25 class DrmOverlayManager; | 24 class DrmOverlayManager; |
26 class DrmWindowHostManager; | 25 class DrmWindowHostManager; |
27 class EventFactoryEvdev; | 26 class EventFactoryEvdev; |
28 class GpuThreadAdapter; | 27 class GpuThreadAdapter; |
| 28 class PlatformWindowDelegate; |
29 | 29 |
30 // Implementation of the platform window. This object and its handle |widget_| | 30 // Implementation of the platform window. This object and its handle |widget_| |
31 // uniquely identify a window. Since the DRI/GBM platform is split into 2 | 31 // uniquely identify a window. Since the DRI/GBM platform is split into 2 |
32 // pieces (Browser process and GPU process), internally we need to make sure the | 32 // pieces (Browser process and GPU process), internally we need to make sure the |
33 // state is synchronized between the 2 processes. | 33 // state is synchronized between the 2 processes. |
34 // | 34 // |
35 // |widget_| is used in both processes to uniquely identify the window. This | 35 // |widget_| is used in both processes to uniquely identify the window. This |
36 // means that any state on the browser side needs to be propagated to the GPU. | 36 // means that any state on the browser side needs to be propagated to the GPU. |
37 // State propagation needs to happen before the state change is acknowledged to | 37 // State propagation needs to happen before the state change is acknowledged to |
38 // |delegate_| as |delegate_| is responsible for initializing the surface | 38 // |delegate_| as |delegate_| is responsible for initializing the surface |
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
99 gfx::AcceleratedWidget widget_; | 99 gfx::AcceleratedWidget widget_; |
100 | 100 |
101 gfx::Rect cursor_confined_bounds_; | 101 gfx::Rect cursor_confined_bounds_; |
102 | 102 |
103 DISALLOW_COPY_AND_ASSIGN(DrmWindowHost); | 103 DISALLOW_COPY_AND_ASSIGN(DrmWindowHost); |
104 }; | 104 }; |
105 | 105 |
106 } // namespace ui | 106 } // namespace ui |
107 | 107 |
108 #endif // UI_OZONE_PLATFORM_DRM_HOST_DRM_WINDOW_HOST_H_ | 108 #endif // UI_OZONE_PLATFORM_DRM_HOST_DRM_WINDOW_HOST_H_ |
OLD | NEW |