OLD | NEW |
| (Empty) |
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 | |
3 // found in the LICENSE file. | |
4 | |
5 #ifndef MANDOLINE_UI_AURA_NATIVE_WIDGET_VIEW_MANAGER_H_ | |
6 #define MANDOLINE_UI_AURA_NATIVE_WIDGET_VIEW_MANAGER_H_ | |
7 | |
8 #include "ui/views/widget/native_widget_aura.h" | |
9 | |
10 namespace aura { | |
11 namespace client { | |
12 class DefaultCaptureClient; | |
13 } | |
14 } | |
15 | |
16 namespace ui { | |
17 namespace internal { | |
18 class InputMethodDelegate; | |
19 } | |
20 } | |
21 | |
22 namespace wm { | |
23 class FocusController; | |
24 } | |
25 | |
26 namespace mojo { | |
27 class Shell; | |
28 } | |
29 | |
30 namespace mus { | |
31 class View; | |
32 } | |
33 | |
34 namespace mandoline { | |
35 | |
36 namespace { | |
37 class NativeWidgetViewObserver; | |
38 } | |
39 | |
40 class WindowTreeHostMojo; | |
41 | |
42 class NativeWidgetViewManager : public views::NativeWidgetAura { | |
43 public: | |
44 NativeWidgetViewManager(views::internal::NativeWidgetDelegate* delegate, | |
45 mojo::Shell* shell, | |
46 mus::View* view); | |
47 ~NativeWidgetViewManager() override; | |
48 | |
49 private: | |
50 friend class NativeWidgetViewObserver; | |
51 | |
52 // Overridden from internal::NativeWidgetAura: | |
53 void InitNativeWidget(const views::Widget::InitParams& in_params) override; | |
54 void OnWindowVisibilityChanged(aura::Window* window, bool visible) override; | |
55 | |
56 scoped_ptr<WindowTreeHostMojo> window_tree_host_; | |
57 scoped_ptr<NativeWidgetViewObserver> view_observer_; | |
58 | |
59 scoped_ptr<wm::FocusController> focus_client_; | |
60 | |
61 mus::View* view_; | |
62 | |
63 scoped_ptr<aura::client::DefaultCaptureClient> capture_client_; | |
64 | |
65 DISALLOW_COPY_AND_ASSIGN(NativeWidgetViewManager); | |
66 }; | |
67 | |
68 } // namespace mandoline | |
69 | |
70 #endif // MANDOLINE_UI_AURA_NATIVE_WIDGET_VIEW_MANAGER_H_ | |
OLD | NEW |