OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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_AURA_WINDOW_TREE_HOST_OZONE_H_ | 5 #ifndef UI_AURA_WINDOW_TREE_HOST_OZONE_H_ |
6 #define UI_AURA_WINDOW_TREE_HOST_OZONE_H_ | 6 #define UI_AURA_WINDOW_TREE_HOST_OZONE_H_ |
7 | 7 |
8 #include "base/memory/scoped_ptr.h" | 8 #include "base/memory/scoped_ptr.h" |
9 #include "ui/aura/window_tree_host.h" | 9 #include "ui/aura/window_tree_host.h" |
10 #include "ui/events/event_source.h" | 10 #include "ui/events/event_source.h" |
11 #include "ui/gfx/geometry/rect.h" | 11 #include "ui/gfx/geometry/rect.h" |
12 #include "ui/platform_window/platform_window_delegate.h" | 12 #include "ui/platform_window/platform_window_delegate.h" |
13 | 13 |
14 namespace ui { | 14 namespace ui { |
15 class PlatformWindow; | 15 class PlatformWindow; |
16 } | 16 } |
17 | 17 |
18 namespace aura { | 18 namespace aura { |
19 | 19 |
20 class AURA_EXPORT WindowTreeHostOzone : public WindowTreeHost, | 20 class AURA_EXPORT WindowTreeHostOzone : public WindowTreeHost, |
21 public ui::EventSource, | 21 public ui::EventSource, |
22 public ui::PlatformWindowDelegate { | 22 public ui::PlatformWindowDelegate { |
23 public: | 23 public: |
24 explicit WindowTreeHostOzone(const gfx::Rect& bounds); | 24 explicit WindowTreeHostOzone(const gfx::Rect& bounds); |
25 ~WindowTreeHostOzone() override; | 25 ~WindowTreeHostOzone() override; |
26 | 26 |
27 protected: | 27 protected: |
28 // WindowTreeHost: | 28 // WindowTreeHost: |
| 29 ui::EventSource* GetEventSource() override; |
| 30 gfx::AcceleratedWidget GetAcceleratedWidget() override; |
| 31 void Show() override; |
| 32 void Hide() override; |
29 gfx::Rect GetBounds() const override; | 33 gfx::Rect GetBounds() const override; |
| 34 void SetBounds(const gfx::Rect& bounds) override; |
| 35 gfx::Point GetLocationOnNativeScreen() const override; |
| 36 void SetCapture() override; |
| 37 void ReleaseCapture() override; |
| 38 void SetCursorNative(gfx::NativeCursor cursor_type) override; |
| 39 void MoveCursorToNative(const gfx::Point& location) override; |
| 40 void OnCursorVisibilityChangedNative(bool show) override; |
| 41 |
| 42 ui::PlatformWindow* platform_window() { return platform_window_.get(); } |
30 | 43 |
31 private: | 44 private: |
32 // ui::PlatformWindowDelegate: | 45 // ui::PlatformWindowDelegate: |
33 void OnBoundsChanged(const gfx::Rect&) override; | 46 void OnBoundsChanged(const gfx::Rect&) override; |
34 void OnDamageRect(const gfx::Rect& damaged_region) override; | 47 void OnDamageRect(const gfx::Rect& damaged_region) override; |
35 void DispatchEvent(ui::Event* event) override; | 48 void DispatchEvent(ui::Event* event) override; |
36 void OnCloseRequest() override; | 49 void OnCloseRequest() override; |
37 void OnClosed() override; | 50 void OnClosed() override; |
38 void OnWindowStateChanged(ui::PlatformWindowState new_state) override; | 51 void OnWindowStateChanged(ui::PlatformWindowState new_state) override; |
39 void OnLostCapture() override; | 52 void OnLostCapture() override; |
40 void OnAcceleratedWidgetAvailable(gfx::AcceleratedWidget widget) override; | 53 void OnAcceleratedWidgetAvailable(gfx::AcceleratedWidget widget) override; |
41 void OnActivationChanged(bool active) override; | 54 void OnActivationChanged(bool active) override; |
42 | 55 |
43 // WindowTreeHost: | |
44 ui::EventSource* GetEventSource() override; | |
45 gfx::AcceleratedWidget GetAcceleratedWidget() override; | |
46 void Show() override; | |
47 void Hide() override; | |
48 void SetBounds(const gfx::Rect& bounds) override; | |
49 gfx::Point GetLocationOnNativeScreen() const override; | |
50 void SetCapture() override; | |
51 void ReleaseCapture() override; | |
52 void SetCursorNative(gfx::NativeCursor cursor_type) override; | |
53 void MoveCursorToNative(const gfx::Point& location) override; | |
54 void OnCursorVisibilityChangedNative(bool show) override; | |
55 | |
56 // ui::EventSource overrides. | 56 // ui::EventSource overrides. |
57 ui::EventProcessor* GetEventProcessor() override; | 57 ui::EventProcessor* GetEventProcessor() override; |
58 | 58 |
59 // Platform-specific part of this WindowTreeHost. | 59 // Platform-specific part of this WindowTreeHost. |
60 scoped_ptr<ui::PlatformWindow> platform_window_; | 60 scoped_ptr<ui::PlatformWindow> platform_window_; |
61 | 61 |
62 // The identifier used to create a compositing surface. | 62 // The identifier used to create a compositing surface. |
63 gfx::AcceleratedWidget widget_; | 63 gfx::AcceleratedWidget widget_; |
64 | 64 |
65 // Current Aura cursor. | 65 // Current Aura cursor. |
66 gfx::NativeCursor current_cursor_; | 66 gfx::NativeCursor current_cursor_; |
67 | 67 |
68 DISALLOW_COPY_AND_ASSIGN(WindowTreeHostOzone); | 68 DISALLOW_COPY_AND_ASSIGN(WindowTreeHostOzone); |
69 }; | 69 }; |
70 | 70 |
71 } // namespace aura | 71 } // namespace aura |
72 | 72 |
73 #endif // UI_AURA_WINDOW_TREE_HOST_OZONE_H_ | 73 #endif // UI_AURA_WINDOW_TREE_HOST_OZONE_H_ |
OLD | NEW |