OLD | NEW |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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_VIEWS_MUS_NATIVE_WIDGET_MUS_H_ | 5 #ifndef UI_VIEWS_MUS_NATIVE_WIDGET_MUS_H_ |
6 #define UI_VIEWS_MUS_NATIVE_WIDGET_MUS_H_ | 6 #define UI_VIEWS_MUS_NATIVE_WIDGET_MUS_H_ |
7 | 7 |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <map> | 10 #include <map> |
(...skipping 12 matching lines...) Expand all Loading... |
23 namespace aura { | 23 namespace aura { |
24 namespace client { | 24 namespace client { |
25 class DefaultCaptureClient; | 25 class DefaultCaptureClient; |
26 class ScreenPositionClient; | 26 class ScreenPositionClient; |
27 class WindowTreeClient; | 27 class WindowTreeClient; |
28 } | 28 } |
29 class Window; | 29 class Window; |
30 } | 30 } |
31 | 31 |
32 namespace mojo { | 32 namespace mojo { |
33 class Shell; | 33 class Connector; |
34 } | 34 } |
35 | 35 |
36 namespace mus { | 36 namespace mus { |
37 class Window; | 37 class Window; |
38 class WindowTreeConnection; | 38 class WindowTreeConnection; |
39 | 39 |
40 } | 40 } |
41 | 41 |
42 namespace wm { | 42 namespace wm { |
43 class FocusController; | 43 class FocusController; |
44 } | 44 } |
45 | 45 |
46 namespace views { | 46 namespace views { |
47 class SurfaceContextFactory; | 47 class SurfaceContextFactory; |
48 class WidgetDelegate; | 48 class WidgetDelegate; |
49 class WindowTreeHostMus; | 49 class WindowTreeHostMus; |
50 | 50 |
51 // An implementation of NativeWidget that binds to a mus::Window. Because Aura | 51 // An implementation of NativeWidget that binds to a mus::Window. Because Aura |
52 // is used extensively within Views code, this code uses aura and binds to the | 52 // is used extensively within Views code, this code uses aura and binds to the |
53 // mus::Window via a Mus-specific aura::WindowTreeHost impl. Because the root | 53 // mus::Window via a Mus-specific aura::WindowTreeHost impl. Because the root |
54 // aura::Window in a hierarchy is created without a delegate by the | 54 // aura::Window in a hierarchy is created without a delegate by the |
55 // aura::WindowTreeHost, we must create a child aura::Window in this class | 55 // aura::WindowTreeHost, we must create a child aura::Window in this class |
56 // (content_) and attach it to the root. | 56 // (content_) and attach it to the root. |
57 class VIEWS_MUS_EXPORT NativeWidgetMus : public internal::NativeWidgetPrivate, | 57 class VIEWS_MUS_EXPORT NativeWidgetMus : public internal::NativeWidgetPrivate, |
58 public aura::WindowDelegate, | 58 public aura::WindowDelegate, |
59 public aura::WindowTreeHostObserver { | 59 public aura::WindowTreeHostObserver { |
60 public: | 60 public: |
61 NativeWidgetMus(internal::NativeWidgetDelegate* delegate, | 61 NativeWidgetMus(internal::NativeWidgetDelegate* delegate, |
62 mojo::Shell* shell, | 62 mojo::Connector* connector, |
63 mus::Window* window, | 63 mus::Window* window, |
64 mus::mojom::SurfaceType surface_type); | 64 mus::mojom::SurfaceType surface_type); |
65 ~NativeWidgetMus() override; | 65 ~NativeWidgetMus() override; |
66 | 66 |
67 // Configures the set of properties supplied to the window manager when | 67 // Configures the set of properties supplied to the window manager when |
68 // creating a new Window for a Widget. | 68 // creating a new Window for a Widget. |
69 static void ConfigurePropertiesForNewWindow( | 69 static void ConfigurePropertiesForNewWindow( |
70 const Widget::InitParams& init_params, | 70 const Widget::InitParams& init_params, |
71 std::map<std::string, std::vector<uint8_t>>* properties); | 71 std::map<std::string, std::vector<uint8_t>>* properties); |
72 | 72 |
(...skipping 147 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
220 scoped_ptr<aura::client::WindowTreeClient> window_tree_client_; | 220 scoped_ptr<aura::client::WindowTreeClient> window_tree_client_; |
221 scoped_ptr<aura::client::ScreenPositionClient> screen_position_client_; | 221 scoped_ptr<aura::client::ScreenPositionClient> screen_position_client_; |
222 base::WeakPtrFactory<NativeWidgetMus> close_widget_factory_; | 222 base::WeakPtrFactory<NativeWidgetMus> close_widget_factory_; |
223 | 223 |
224 DISALLOW_COPY_AND_ASSIGN(NativeWidgetMus); | 224 DISALLOW_COPY_AND_ASSIGN(NativeWidgetMus); |
225 }; | 225 }; |
226 | 226 |
227 } // namespace views | 227 } // namespace views |
228 | 228 |
229 #endif // UI_VIEWS_MUS_NATIVE_WIDGET_MUS_H_ | 229 #endif // UI_VIEWS_MUS_NATIVE_WIDGET_MUS_H_ |
OLD | NEW |