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 #include "chrome/browser/ui/views/location_bar/action_box_button_view.h" | 5 #include "chrome/browser/ui/views/location_bar/action_box_button_view.h" |
6 | 6 |
7 #include "base/command_line.h" | 7 #include "base/command_line.h" |
8 #include "base/utf_string_conversions.h" | 8 #include "base/utf_string_conversions.h" |
9 #include "chrome/app/chrome_command_ids.h" | 9 #include "chrome/app/chrome_command_ids.h" |
10 #include "chrome/browser/command_updater.h" | 10 #include "chrome/browser/ui/browser.h" |
11 #include "chrome/browser/extensions/extension_service.h" | |
12 #include "chrome/browser/extensions/extension_system.h" | |
13 #include "chrome/browser/ui/toolbar/action_box_menu_model.h" | 11 #include "chrome/browser/ui/toolbar/action_box_menu_model.h" |
14 #include "chrome/browser/ui/view_ids.h" | 12 #include "chrome/browser/ui/view_ids.h" |
15 #include "chrome/browser/ui/views/action_box_menu.h" | 13 #include "chrome/browser/ui/views/action_box_menu.h" |
16 #include "chrome/browser/ui/views/browser_dialogs.h" | 14 #include "chrome/browser/ui/views/browser_dialogs.h" |
17 #include "chrome/common/chrome_switches.h" | 15 #include "chrome/common/chrome_switches.h" |
18 #include "grit/generated_resources.h" | 16 #include "grit/generated_resources.h" |
19 #include "grit/theme_resources.h" | 17 #include "grit/theme_resources.h" |
20 #include "ui/base/accessibility/accessible_view_state.h" | 18 #include "ui/base/accessibility/accessible_view_state.h" |
21 #include "ui/base/l10n/l10n_util.h" | 19 #include "ui/base/l10n/l10n_util.h" |
22 #include "ui/base/resource/resource_bundle.h" | 20 #include "ui/base/resource/resource_bundle.h" |
23 | 21 |
24 namespace { | 22 namespace { |
25 | 23 |
26 // Colors used for button backgrounds. | 24 // Colors used for button backgrounds. |
27 const SkColor kNormalBackgroundColor = SkColorSetRGB(255, 255, 255); | 25 const SkColor kNormalBackgroundColor = SkColorSetRGB(255, 255, 255); |
28 const SkColor kHotBackgroundColor = SkColorSetRGB(239, 239, 239); | 26 const SkColor kHotBackgroundColor = SkColorSetRGB(239, 239, 239); |
29 const SkColor kPushedBackgroundColor = SkColorSetRGB(207, 207, 207); | 27 const SkColor kPushedBackgroundColor = SkColorSetRGB(207, 207, 207); |
30 | 28 |
31 const SkColor kNormalBorderColor = SkColorSetRGB(255, 255, 255); | 29 const SkColor kNormalBorderColor = SkColorSetRGB(255, 255, 255); |
32 const SkColor kHotBorderColor = SkColorSetRGB(223, 223, 223); | 30 const SkColor kHotBorderColor = SkColorSetRGB(223, 223, 223); |
33 const SkColor kPushedBorderColor = SkColorSetRGB(191, 191, 191); | 31 const SkColor kPushedBorderColor = SkColorSetRGB(191, 191, 191); |
34 | 32 |
35 } // namespace | 33 } // namespace |
36 | 34 |
37 | 35 |
38 ActionBoxButtonView::ActionBoxButtonView(Browser* browser, Profile* profile) | 36 ActionBoxButtonView::ActionBoxButtonView(Browser* browser) |
39 : views::MenuButton(NULL, string16(), this, false), | 37 : views::MenuButton(NULL, string16(), this, false), |
40 browser_(browser), | 38 browser_(browser) { |
41 profile_(profile) { | |
42 set_id(VIEW_ID_ACTION_BOX_BUTTON); | 39 set_id(VIEW_ID_ACTION_BOX_BUTTON); |
43 SetTooltipText(l10n_util::GetStringUTF16(IDS_TOOLTIP_ACTION_BOX_BUTTON)); | 40 SetTooltipText(l10n_util::GetStringUTF16(IDS_TOOLTIP_ACTION_BOX_BUTTON)); |
44 SetIcon(*ui::ResourceBundle::GetSharedInstance().GetImageSkiaNamed( | 41 SetIcon(*ui::ResourceBundle::GetSharedInstance().GetImageSkiaNamed( |
45 IDR_ACTION_BOX_BUTTON)); | 42 IDR_ACTION_BOX_BUTTON)); |
46 set_accessibility_focusable(true); | 43 set_accessibility_focusable(true); |
47 set_border(NULL); | 44 set_border(NULL); |
48 } | 45 } |
49 | 46 |
50 ActionBoxButtonView::~ActionBoxButtonView() { | 47 ActionBoxButtonView::~ActionBoxButtonView() { |
51 } | 48 } |
(...skipping 25 matching lines...) Expand all Loading... |
77 switches::kEnableActionBox); | 74 switches::kEnableActionBox); |
78 } | 75 } |
79 | 76 |
80 void ActionBoxButtonView::GetAccessibleState(ui::AccessibleViewState* state) { | 77 void ActionBoxButtonView::GetAccessibleState(ui::AccessibleViewState* state) { |
81 MenuButton::GetAccessibleState(state); | 78 MenuButton::GetAccessibleState(state); |
82 state->name = l10n_util::GetStringUTF16(IDS_ACCNAME_ACTION_BOX_BUTTON); | 79 state->name = l10n_util::GetStringUTF16(IDS_ACCNAME_ACTION_BOX_BUTTON); |
83 } | 80 } |
84 | 81 |
85 void ActionBoxButtonView::OnMenuButtonClicked(View* source, | 82 void ActionBoxButtonView::OnMenuButtonClicked(View* source, |
86 const gfx::Point& point) { | 83 const gfx::Point& point) { |
87 ExtensionService* extension_service = | 84 ActionBoxMenuModel model(browser_); |
88 extensions::ExtensionSystem::Get(profile_)->extension_service(); | |
89 | |
90 ActionBoxMenuModel model(browser_, extension_service); | |
91 ActionBoxMenu action_box_menu(browser_, &model); | 85 ActionBoxMenu action_box_menu(browser_, &model); |
92 action_box_menu.Init(); | 86 action_box_menu.Init(); |
93 action_box_menu.RunMenu(this); | 87 action_box_menu.RunMenu(this); |
94 } | 88 } |
OLD | NEW |