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/browser_actions_container.h" | 5 #include "chrome/browser/ui/views/browser_actions_container.h" |
6 | 6 |
7 #include "base/bind.h" | 7 #include "base/bind.h" |
8 #include "base/stl_util.h" | 8 #include "base/stl_util.h" |
9 #include "base/string_util.h" | 9 #include "base/string_util.h" |
10 #include "base/utf_string_conversions.h" | 10 #include "base/utf_string_conversions.h" |
(...skipping 24 matching lines...) Expand all Loading... |
35 #include "grit/ui_resources.h" | 35 #include "grit/ui_resources.h" |
36 #include "third_party/skia/include/core/SkBitmap.h" | 36 #include "third_party/skia/include/core/SkBitmap.h" |
37 #include "third_party/skia/include/effects/SkGradientShader.h" | 37 #include "third_party/skia/include/effects/SkGradientShader.h" |
38 #include "ui/base/accessibility/accessible_view_state.h" | 38 #include "ui/base/accessibility/accessible_view_state.h" |
39 #include "ui/base/animation/slide_animation.h" | 39 #include "ui/base/animation/slide_animation.h" |
40 #include "ui/base/l10n/l10n_util.h" | 40 #include "ui/base/l10n/l10n_util.h" |
41 #include "ui/base/resource/resource_bundle.h" | 41 #include "ui/base/resource/resource_bundle.h" |
42 #include "ui/base/theme_provider.h" | 42 #include "ui/base/theme_provider.h" |
43 #include "ui/gfx/canvas.h" | 43 #include "ui/gfx/canvas.h" |
44 #include "ui/gfx/canvas_skia.h" | 44 #include "ui/gfx/canvas_skia.h" |
| 45 #include "ui/gfx/image/image.h" |
45 #include "ui/views/controls/button/menu_button.h" | 46 #include "ui/views/controls/button/menu_button.h" |
46 #include "ui/views/controls/button/text_button.h" | 47 #include "ui/views/controls/button/text_button.h" |
47 #include "ui/views/controls/menu/menu_item_view.h" | 48 #include "ui/views/controls/menu/menu_item_view.h" |
48 #include "ui/views/controls/menu/menu_model_adapter.h" | 49 #include "ui/views/controls/menu/menu_model_adapter.h" |
49 #include "ui/views/controls/menu/menu_runner.h" | 50 #include "ui/views/controls/menu/menu_runner.h" |
50 #include "ui/views/controls/resize_area.h" | 51 #include "ui/views/controls/resize_area.h" |
51 #include "ui/views/drag_utils.h" | 52 #include "ui/views/drag_utils.h" |
52 #include "ui/views/metrics.h" | 53 #include "ui/views/metrics.h" |
53 | 54 |
54 // Horizontal spacing between most items in the container, as well as after the | 55 // Horizontal spacing between most items in the container, as well as after the |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
111 } | 112 } |
112 | 113 |
113 MenuButton::ViewHierarchyChanged(is_add, parent, child); | 114 MenuButton::ViewHierarchyChanged(is_add, parent, child); |
114 } | 115 } |
115 | 116 |
116 void BrowserActionButton::ButtonPressed(views::Button* sender, | 117 void BrowserActionButton::ButtonPressed(views::Button* sender, |
117 const views::Event& event) { | 118 const views::Event& event) { |
118 panel_->OnBrowserActionExecuted(this, false); | 119 panel_->OnBrowserActionExecuted(this, false); |
119 } | 120 } |
120 | 121 |
121 void BrowserActionButton::OnImageLoaded(SkBitmap* image, | 122 void BrowserActionButton::OnImageLoaded(const gfx::Image* image, |
122 const ExtensionResource& resource, | 123 const std::string& extension_id, |
123 int index) { | 124 int index) { |
124 if (image) | 125 if (image) |
125 default_icon_ = *image; | 126 default_icon_ = *image->ToSkBitmap(); |
126 | 127 |
127 // Call back to UpdateState() because a more specific icon might have been set | 128 // Call back to UpdateState() because a more specific icon might have been set |
128 // while the load was outstanding. | 129 // while the load was outstanding. |
129 UpdateState(); | 130 UpdateState(); |
130 } | 131 } |
131 | 132 |
132 void BrowserActionButton::UpdateState() { | 133 void BrowserActionButton::UpdateState() { |
133 int tab_id = panel_->GetCurrentTabId(); | 134 int tab_id = panel_->GetCurrentTabId(); |
134 if (tab_id < 0) | 135 if (tab_id < 0) |
135 return; | 136 return; |
(...skipping 958 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1094 } | 1095 } |
1095 } | 1096 } |
1096 | 1097 |
1097 bool BrowserActionsContainer::ShouldDisplayBrowserAction( | 1098 bool BrowserActionsContainer::ShouldDisplayBrowserAction( |
1098 const Extension* extension) { | 1099 const Extension* extension) { |
1099 // Only display incognito-enabled extensions while in incognito mode. | 1100 // Only display incognito-enabled extensions while in incognito mode. |
1100 return | 1101 return |
1101 (!profile_->IsOffTheRecord() || | 1102 (!profile_->IsOffTheRecord() || |
1102 profile_->GetExtensionService()->IsIncognitoEnabled(extension->id())); | 1103 profile_->GetExtensionService()->IsIncognitoEnabled(extension->id())); |
1103 } | 1104 } |
OLD | NEW |