OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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 CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_FRAME_H_ | 5 #ifndef CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_FRAME_H_ |
6 #define CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_FRAME_H_ | 6 #define CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_FRAME_H_ |
7 | 7 |
8 #include "base/compiler_specific.h" | 8 #include "base/compiler_specific.h" |
9 #include "base/logging.h" | 9 #include "base/logging.h" |
10 #include "base/macros.h" | 10 #include "base/macros.h" |
11 #include "build/build_config.h" | 11 #include "build/build_config.h" |
12 #include "chrome/browser/ui/views/frame/browser_non_client_frame_view.h" | 12 #include "chrome/browser/ui/views/frame/browser_non_client_frame_view.h" |
13 #include "ui/views/context_menu_controller.h" | 13 #include "ui/views/context_menu_controller.h" |
14 #include "ui/views/widget/widget.h" | 14 #include "ui/views/widget/widget.h" |
15 | 15 |
16 class AvatarMenuButton; | 16 class AvatarMenuButton; |
17 class BrowserRootView; | 17 class BrowserRootView; |
18 class BrowserView; | 18 class BrowserView; |
19 class NativeBrowserFrame; | 19 class NativeBrowserFrame; |
20 class NonClientFrameView; | 20 class NonClientFrameView; |
21 class SystemMenuModelBuilder; | 21 class SystemMenuModelBuilder; |
| 22 class ThemeService; |
22 | 23 |
23 namespace gfx { | 24 namespace gfx { |
24 class FontList; | 25 class FontList; |
25 class Rect; | 26 class Rect; |
26 } | 27 } |
27 | 28 |
28 namespace ui { | 29 namespace ui { |
29 class EventHandler; | 30 class EventHandler; |
30 class MenuModel; | 31 class MenuModel; |
31 class ThemeProvider; | |
32 } | 32 } |
33 | 33 |
34 namespace views { | 34 namespace views { |
35 class MenuRunner; | 35 class MenuRunner; |
36 class View; | 36 class View; |
37 } | 37 } |
38 | 38 |
39 // This is a virtual interface that allows system specific browser frames. | 39 // This is a virtual interface that allows system specific browser frames. |
40 class BrowserFrame | 40 class BrowserFrame |
41 : public views::Widget, | 41 : public views::Widget, |
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
95 | 95 |
96 // Called when BrowserView creates all it's child views. | 96 // Called when BrowserView creates all it's child views. |
97 void OnBrowserViewInitViewsComplete(); | 97 void OnBrowserViewInitViewsComplete(); |
98 | 98 |
99 // Overridden from views::Widget: | 99 // Overridden from views::Widget: |
100 views::internal::RootView* CreateRootView() override; | 100 views::internal::RootView* CreateRootView() override; |
101 views::NonClientFrameView* CreateNonClientFrameView() override; | 101 views::NonClientFrameView* CreateNonClientFrameView() override; |
102 bool GetAccelerator(int command_id, | 102 bool GetAccelerator(int command_id, |
103 ui::Accelerator* accelerator) const override; | 103 ui::Accelerator* accelerator) const override; |
104 const ui::ThemeProvider* GetThemeProvider() const override; | 104 const ui::ThemeProvider* GetThemeProvider() const override; |
| 105 const ui::NativeTheme* GetNativeTheme() const override; |
105 void SchedulePaintInRect(const gfx::Rect& rect) override; | 106 void SchedulePaintInRect(const gfx::Rect& rect) override; |
106 void OnNativeWidgetActivationChanged(bool active) override; | 107 void OnNativeWidgetActivationChanged(bool active) override; |
107 | 108 |
108 // Overridden from views::ContextMenuController: | 109 // Overridden from views::ContextMenuController: |
109 void ShowContextMenuForView(views::View* source, | 110 void ShowContextMenuForView(views::View* source, |
110 const gfx::Point& p, | 111 const gfx::Point& p, |
111 ui::MenuSourceType source_type) override; | 112 ui::MenuSourceType source_type) override; |
112 | 113 |
113 AvatarMenuButton* GetAvatarMenuButton(); | 114 AvatarMenuButton* GetAvatarMenuButton(); |
114 | 115 |
(...skipping 18 matching lines...) Expand all Loading... |
133 | 134 |
134 // The BrowserView is our ClientView. This is a pointer to it. | 135 // The BrowserView is our ClientView. This is a pointer to it. |
135 BrowserView* browser_view_; | 136 BrowserView* browser_view_; |
136 | 137 |
137 scoped_ptr<SystemMenuModelBuilder> menu_model_builder_; | 138 scoped_ptr<SystemMenuModelBuilder> menu_model_builder_; |
138 | 139 |
139 // Used to show the system menu. Only used if | 140 // Used to show the system menu. Only used if |
140 // NativeBrowserFrame::UsesNativeSystemMenu() returns false. | 141 // NativeBrowserFrame::UsesNativeSystemMenu() returns false. |
141 scoped_ptr<views::MenuRunner> menu_runner_; | 142 scoped_ptr<views::MenuRunner> menu_runner_; |
142 | 143 |
143 const ui::ThemeProvider* theme_provider_; | 144 const ThemeService* theme_service_; |
144 | 145 |
145 scoped_ptr<ui::EventHandler> browser_command_handler_; | 146 scoped_ptr<ui::EventHandler> browser_command_handler_; |
146 | 147 |
147 DISALLOW_COPY_AND_ASSIGN(BrowserFrame); | 148 DISALLOW_COPY_AND_ASSIGN(BrowserFrame); |
148 }; | 149 }; |
149 | 150 |
150 #endif // CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_FRAME_H_ | 151 #endif // CHROME_BROWSER_UI_VIEWS_FRAME_BROWSER_FRAME_H_ |
OLD | NEW |