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

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: License year update Created 7 years, 11 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) 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 #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 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
156 158
157 layout->AddPaddingRow(0, kPaddingBelowHeadline); 159 layout->AddPaddingRow(0, kPaddingBelowHeadline);
158 height_ += kPaddingBelowHeadline; 160 height_ += kPaddingBelowHeadline;
159 161
160 for (size_t i = 0; i < entries_.size(); ++i) { 162 for (size_t i = 0; i < entries_.size(); ++i) {
161 layout->StartRow(0, 1); 163 layout->StartRow(0, 1);
162 164
163 views::ImageView* image_view = new views::ImageView(); 165 views::ImageView* image_view = new views::ImageView();
164 entries_[i].extension_imageview = image_view; 166 entries_[i].extension_imageview = image_view;
165 image_view->SetImageSize(gfx::Size(16, 16)); 167 image_view->SetImageSize(gfx::Size(16, 16));
166 image_view->SetImage(Extension::GetDefaultIcon(false)); 168 image_view->SetImage(
169 extensions::IconsInfo::GetDefaultIcon(false)); // not app
167 layout->AddView(image_view); 170 layout->AddView(image_view);
168 171
169 views::Link* link = new views::Link(entries_[i].extension_name); 172 views::Link* link = new views::Link(entries_[i].extension_name);
170 link->SetFont(link->font().DeriveFont(2)); 173 link->SetFont(link->font().DeriveFont(2));
171 link->set_id(i); 174 link->set_id(i);
172 link->set_listener(this); 175 link->set_listener(this);
173 layout->AddView(link); 176 layout->AddView(link);
174 177
175 height_ += std::max(image_view->GetPreferredSize().height(), 178 height_ += std::max(image_view->GetPreferredSize().height(),
176 link->GetPreferredSize().height()); 179 link->GetPreferredSize().height());
(...skipping 13 matching lines...) Expand all
190 const gfx::ImageSkia* image_skia = image.ToImageSkia(); 193 const gfx::ImageSkia* image_skia = image.ToImageSkia();
191 entries_[index].extension_imageview->SetImage(image_skia); 194 entries_[index].extension_imageview->SetImage(image_skia);
192 } 195 }
193 } 196 }
194 197
195 ScriptBubbleController* ScriptBubbleView::GetScriptBubbleController() { 198 ScriptBubbleController* ScriptBubbleView::GetScriptBubbleController() {
196 extensions::TabHelper* extensions_tab_helper = 199 extensions::TabHelper* extensions_tab_helper =
197 extensions::TabHelper::FromWebContents(web_contents_); 200 extensions::TabHelper::FromWebContents(web_contents_);
198 return extensions_tab_helper->script_bubble_controller(); 201 return extensions_tab_helper->script_bubble_controller();
199 } 202 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698