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_APP_LIST_VIEWS_APP_LIST_MENU_VIEWS_H_ | 5 #ifndef UI_APP_LIST_VIEWS_APP_LIST_MENU_VIEWS_H_ |
6 #define UI_APP_LIST_VIEWS_APP_LIST_MENU_VIEWS_H_ | 6 #define UI_APP_LIST_VIEWS_APP_LIST_MENU_VIEWS_H_ |
7 | 7 |
8 #include "base/memory/scoped_ptr.h" | 8 #include "base/memory/scoped_ptr.h" |
9 #include "ui/app_list/app_list_menu.h" | 9 #include "ui/app_list/app_list_menu.h" |
10 #include "ui/views/controls/menu/menu_model_adapter.h" | 10 #include "ui/views/controls/menu/menu_model_adapter.h" |
11 #include "ui/views/controls/menu/menu_runner.h" | 11 #include "ui/views/controls/menu/menu_runner.h" |
12 | 12 |
13 namespace gfx { | 13 namespace gfx { |
14 class Point; | 14 class Point; |
15 } | 15 } |
16 | 16 |
17 namespace views { | 17 namespace views { |
18 class MenuButton; | 18 class MenuButton; |
19 } | 19 } |
20 | 20 |
21 namespace app_list { | 21 namespace app_list { |
22 | 22 |
23 // Views implementation of the app list menu. | 23 // Views implementation of the app list menu. |
24 // TODO(benwells): We should consider moving this into Chrome. | 24 // TODO(benwells): We should consider moving this into Chrome. |
25 class AppListMenuViews : public AppListMenu { | 25 class AppListMenuViews : public AppListMenu { |
26 public: | 26 public: |
27 explicit AppListMenuViews(AppListViewDelegate* delegate); | 27 explicit AppListMenuViews(AppListViewDelegate* delegate); |
28 virtual ~AppListMenuViews(); | 28 ~AppListMenuViews() override; |
29 | 29 |
30 void RunMenuAt(views::MenuButton* button, const gfx::Point& point); | 30 void RunMenuAt(views::MenuButton* button, const gfx::Point& point); |
31 void Cancel(); | 31 void Cancel(); |
32 | 32 |
33 private: | 33 private: |
34 // The context menu itself and its contents. | 34 // The context menu itself and its contents. |
35 scoped_ptr<views::MenuModelAdapter> menu_delegate_; | 35 scoped_ptr<views::MenuModelAdapter> menu_delegate_; |
36 views::MenuItemView* menu_; // Owned by menu_runner_. | 36 views::MenuItemView* menu_; // Owned by menu_runner_. |
37 scoped_ptr<views::MenuRunner> menu_runner_; | 37 scoped_ptr<views::MenuRunner> menu_runner_; |
38 | 38 |
39 DISALLOW_COPY_AND_ASSIGN(AppListMenuViews); | 39 DISALLOW_COPY_AND_ASSIGN(AppListMenuViews); |
40 }; | 40 }; |
41 | 41 |
42 } // namespace app_list | 42 } // namespace app_list |
43 | 43 |
44 #endif // UI_APP_LIST_VIEWS_APP_LIST_MENU_VIEWS_H_ | 44 #endif // UI_APP_LIST_VIEWS_APP_LIST_MENU_VIEWS_H_ |
OLD | NEW |