Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(401)

Side by Side Diff: chrome/browser/ui/views/script_bubble_view.cc

Issue 11786003: Move Icons out of Extension class (Closed) Base URL: http://git.chromium.org/chromium/src.git@dc_unref_browser_action
Patch Set: Created 7 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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/script_bubble_view.h" 5 #include "chrome/browser/ui/views/script_bubble_view.h"
6 6
7 #include "base/utf_string_conversions.h" 7 #include "base/utf_string_conversions.h"
8 #include "chrome/browser/extensions/extension_service.h" 8 #include "chrome/browser/extensions/extension_service.h"
9 #include "chrome/browser/extensions/extension_system.h" 9 #include "chrome/browser/extensions/extension_system.h"
10 #include "chrome/browser/extensions/image_loader.h" 10 #include "chrome/browser/extensions/image_loader.h"
11 #include "chrome/browser/extensions/script_bubble_controller.h" 11 #include "chrome/browser/extensions/script_bubble_controller.h"
12 #include "chrome/browser/extensions/tab_helper.h" 12 #include "chrome/browser/extensions/tab_helper.h"
13 #include "chrome/browser/profiles/profile.h" 13 #include "chrome/browser/profiles/profile.h"
14 #include "chrome/common/extensions/api/icons/icons_handler.h"
14 #include "chrome/common/extensions/extension.h" 15 #include "chrome/common/extensions/extension.h"
15 #include "chrome/common/url_constants.h" 16 #include "chrome/common/url_constants.h"
16 #include "content/public/browser/page_navigator.h" 17 #include "content/public/browser/page_navigator.h"
17 #include "content/public/browser/web_contents.h" 18 #include "content/public/browser/web_contents.h"
18 #include "grit/generated_resources.h" 19 #include "grit/generated_resources.h"
19 #include "grit/locale_settings.h" 20 #include "grit/locale_settings.h"
20 #include "ui/base/l10n/l10n_util.h" 21 #include "ui/base/l10n/l10n_util.h"
21 #include "ui/views/controls/image_view.h" 22 #include "ui/views/controls/image_view.h"
22 #include "ui/views/controls/label.h" 23 #include "ui/views/controls/label.h"
23 #include "ui/views/controls/link.h" 24 #include "ui/views/controls/link.h"
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
74 // scripts survive their extensions being disabled. 75 // scripts survive their extensions being disabled.
75 const Extension* extension = 76 const Extension* extension =
76 extension_service->GetExtensionById(*iter, true); 77 extension_service->GetExtensionById(*iter, true);
77 ScriptEntry entry; 78 ScriptEntry entry;
78 entry.extension_id = *iter; 79 entry.extension_id = *iter;
79 entry.extension_name = UTF8ToUTF16(extension->name()); 80 entry.extension_name = UTF8ToUTF16(extension->name());
80 entries_.push_back(entry); 81 entries_.push_back(entry);
81 82
82 int size = extension_misc::EXTENSION_ICON_BITTY; 83 int size = extension_misc::EXTENSION_ICON_BITTY;
83 ExtensionResource image = 84 ExtensionResource image =
84 extension->GetIconResource(size, 85 extensions::IconsInfo::GetIconResource(extension,
85 ExtensionIconSet::MATCH_BIGGER); 86 size,
87 ExtensionIconSet::MATCH_BIGGER);
86 extensions::ImageLoader::Get(profile)->LoadImageAsync( 88 extensions::ImageLoader::Get(profile)->LoadImageAsync(
87 extension, image, gfx::Size(size, size), 89 extension, image, gfx::Size(size, size),
88 base::Bind(&ScriptBubbleView::OnImageLoaded, AsWeakPtr(), i)); 90 base::Bind(&ScriptBubbleView::OnImageLoaded, AsWeakPtr(), i));
89 } 91 }
90 } 92 }
91 93
92 ScriptBubbleView::~ScriptBubbleView() { 94 ScriptBubbleView::~ScriptBubbleView() {
93 } 95 }
94 96
95 gfx::Size ScriptBubbleView::GetPreferredSize() { 97 gfx::Size ScriptBubbleView::GetPreferredSize() {
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
155 157
156 layout->AddPaddingRow(0, kPaddingBelowHeadline); 158 layout->AddPaddingRow(0, kPaddingBelowHeadline);
157 height_ += kPaddingBelowHeadline; 159 height_ += kPaddingBelowHeadline;
158 160
159 for (size_t i = 0; i < entries_.size(); ++i) { 161 for (size_t i = 0; i < entries_.size(); ++i) {
160 layout->StartRow(0, 1); 162 layout->StartRow(0, 1);
161 163
162 views::ImageView* image_view = new views::ImageView(); 164 views::ImageView* image_view = new views::ImageView();
163 entries_[i].extension_imageview = image_view; 165 entries_[i].extension_imageview = image_view;
164 image_view->SetImageSize(gfx::Size(16, 16)); 166 image_view->SetImageSize(gfx::Size(16, 16));
165 image_view->SetImage(Extension::GetDefaultIcon(false)); 167 image_view->SetImage(
168 extensions::IconsInfo::GetDefaultExtensionIcon());
166 layout->AddView(image_view); 169 layout->AddView(image_view);
167 170
168 views::Link* link = new views::Link(entries_[i].extension_name); 171 views::Link* link = new views::Link(entries_[i].extension_name);
169 link->set_id(i); 172 link->set_id(i);
170 link->set_listener(this); 173 link->set_listener(this);
171 layout->AddView(link); 174 layout->AddView(link);
172 175
173 height_ += std::max(image_view->GetPreferredSize().height(), 176 height_ += std::max(image_view->GetPreferredSize().height(),
174 link->GetPreferredSize().height()); 177 link->GetPreferredSize().height());
175 178
(...skipping 12 matching lines...) Expand all
188 const gfx::ImageSkia* image_skia = image.ToImageSkia(); 191 const gfx::ImageSkia* image_skia = image.ToImageSkia();
189 entries_[index].extension_imageview->SetImage(image_skia); 192 entries_[index].extension_imageview->SetImage(image_skia);
190 } 193 }
191 } 194 }
192 195
193 ScriptBubbleController* ScriptBubbleView::GetScriptBubbleController() { 196 ScriptBubbleController* ScriptBubbleView::GetScriptBubbleController() {
194 extensions::TabHelper* extensions_tab_helper = 197 extensions::TabHelper* extensions_tab_helper =
195 extensions::TabHelper::FromWebContents(web_contents_); 198 extensions::TabHelper::FromWebContents(web_contents_);
196 return extensions_tab_helper->script_bubble_controller(); 199 return extensions_tab_helper->script_bubble_controller();
197 } 200 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698