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 MOJO_VIEWS_NATIVE_WIDGET_VIEW_MANAGER_H_ | 5 #ifndef MOJO_VIEWS_NATIVE_WIDGET_VIEW_MANAGER_H_ |
6 #define MOJO_VIEWS_NATIVE_WIDGET_VIEW_MANAGER_H_ | 6 #define MOJO_VIEWS_NATIVE_WIDGET_VIEW_MANAGER_H_ |
7 | 7 |
8 #include "mojo/aura/window_tree_host_mojo_delegate.h" | 8 #include "mojo/aura/window_tree_host_mojo_delegate.h" |
9 #include "mojo/services/public/cpp/view_manager/node_observer.h" | 9 #include "mojo/services/public/cpp/view_manager/node_observer.h" |
10 #include "mojo/services/public/cpp/view_manager/view_observer.h" | 10 #include "mojo/services/public/cpp/view_manager/view_observer.h" |
11 #include "ui/views/widget/native_widget_aura.h" | 11 #include "ui/views/widget/native_widget_aura.h" |
12 | 12 |
13 namespace ui { | 13 namespace ui { |
14 namespace internal { | 14 namespace internal { |
15 class InputMethodDelegate; | 15 class InputMethodDelegate; |
16 } | 16 } |
17 } | 17 } |
18 | 18 |
19 namespace wm { | 19 namespace wm { |
20 class FocusController; | 20 class FocusController; |
21 class ScopedCaptureClient; | 21 class ScopedCaptureClient; |
22 } | 22 } |
23 | 23 |
24 namespace mojo { | 24 namespace mojo { |
25 | 25 |
26 class WindowTreeHostMojo; | 26 class WindowTreeHostMojo; |
27 | 27 |
28 class NativeWidgetViewManager : public views::NativeWidgetAura, | 28 class NativeWidgetViewManager : public views::NativeWidgetAura, |
29 public WindowTreeHostMojoDelegate, | 29 public WindowTreeHostMojoDelegate, |
30 public view_manager::ViewObserver, | 30 public ViewObserver, |
31 public view_manager::NodeObserver { | 31 public NodeObserver { |
32 public: | 32 public: |
33 NativeWidgetViewManager(views::internal::NativeWidgetDelegate* delegate, | 33 NativeWidgetViewManager(views::internal::NativeWidgetDelegate* delegate, |
34 view_manager::Node* node); | 34 Node* node); |
35 virtual ~NativeWidgetViewManager(); | 35 virtual ~NativeWidgetViewManager(); |
36 | 36 |
37 private: | 37 private: |
38 // Overridden from internal::NativeWidgetAura: | 38 // Overridden from internal::NativeWidgetAura: |
39 virtual void InitNativeWidget( | 39 virtual void InitNativeWidget( |
40 const views::Widget::InitParams& in_params) OVERRIDE; | 40 const views::Widget::InitParams& in_params) OVERRIDE; |
41 | 41 |
42 // WindowTreeHostMojoDelegate: | 42 // WindowTreeHostMojoDelegate: |
43 virtual void CompositorContentsChanged(const SkBitmap& bitmap) OVERRIDE; | 43 virtual void CompositorContentsChanged(const SkBitmap& bitmap) OVERRIDE; |
44 | 44 |
45 // view_manager::NodeObserver: | 45 // NodeObserver: |
46 virtual void OnNodeDestroyed(view_manager::Node* node) OVERRIDE; | 46 virtual void OnNodeDestroyed(Node* node) OVERRIDE; |
47 virtual void OnNodeActiveViewChanged(view_manager::Node* node, | 47 virtual void OnNodeActiveViewChanged(Node* node, |
48 view_manager::View* old_view, | 48 View* old_view, |
49 view_manager::View* new_view) OVERRIDE; | 49 View* new_view) OVERRIDE; |
50 virtual void OnNodeBoundsChanged(view_manager::Node* node, | 50 virtual void OnNodeBoundsChanged(Node* node, |
51 const gfx::Rect& old_bounds, | 51 const gfx::Rect& old_bounds, |
52 const gfx::Rect& new_bounds) OVERRIDE; | 52 const gfx::Rect& new_bounds) OVERRIDE; |
53 | 53 |
54 // view_manager::ViewObserver | 54 // ViewObserver |
55 virtual void OnViewInputEvent(view_manager::View* view, | 55 virtual void OnViewInputEvent(View* view, const EventPtr& event) OVERRIDE; |
56 const EventPtr& event) OVERRIDE; | 56 virtual void OnViewDestroyed(View* view) OVERRIDE; |
57 virtual void OnViewDestroyed(view_manager::View* view) OVERRIDE; | |
58 | 57 |
59 scoped_ptr<WindowTreeHostMojo> window_tree_host_; | 58 scoped_ptr<WindowTreeHostMojo> window_tree_host_; |
60 | 59 |
61 scoped_ptr<wm::FocusController> focus_client_; | 60 scoped_ptr<wm::FocusController> focus_client_; |
62 | 61 |
63 scoped_ptr<ui::internal::InputMethodDelegate> ime_filter_; | 62 scoped_ptr<ui::internal::InputMethodDelegate> ime_filter_; |
64 | 63 |
65 view_manager::Node* node_; | 64 Node* node_; |
66 view_manager::View* view_; | 65 View* view_; |
67 | 66 |
68 scoped_ptr<wm::ScopedCaptureClient> capture_client_; | 67 scoped_ptr<wm::ScopedCaptureClient> capture_client_; |
69 | 68 |
70 DISALLOW_COPY_AND_ASSIGN(NativeWidgetViewManager); | 69 DISALLOW_COPY_AND_ASSIGN(NativeWidgetViewManager); |
71 }; | 70 }; |
72 | 71 |
73 } // namespace mojo | 72 } // namespace mojo |
74 | 73 |
75 #endif // MOJO_VIEWS_NATIVE_WIDGET_VIEW_MANAGER_H_ | 74 #endif // MOJO_VIEWS_NATIVE_WIDGET_VIEW_MANAGER_H_ |
OLD | NEW |