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

Unified Diff: chrome/browser/background/background_contents_service.cc

Issue 160923002: Fixes a typo: use the default image if the extension doesn't have icon. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: re-upload Created 6 years, 10 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/background/background_contents_service.cc
diff --git a/chrome/browser/background/background_contents_service.cc b/chrome/browser/background/background_contents_service.cc
index 59202dd2ced85ff4e8179bb8e1b665ea87dbfdb9..2caa88772146acbe89bd1b11d5fe72609700d1f3 100644
--- a/chrome/browser/background/background_contents_service.cc
+++ b/chrome/browser/background/background_contents_service.cc
@@ -140,7 +140,8 @@ class CrashNotificationDelegate : public NotificationDelegate {
virtual bool HasClickedListener() OVERRIDE { return true; }
virtual std::string id() const OVERRIDE {
- return kNotificationPrefix + extension_id_;
+ return BackgroundContentsService::GetNotificationIdForExtension(
+ extension_id_);
}
virtual content::RenderViewHost* GetRenderViewHost() const OVERRIDE {
@@ -166,7 +167,7 @@ void NotificationImageReady(
Profile* profile,
const gfx::Image& icon) {
gfx::Image notification_icon(icon);
- if (icon.IsEmpty()) {
+ if (notification_icon.IsEmpty()) {
Andrew T Wilson (Slow) 2014/02/17 17:12:32 Why is this changing to use notification_icon inst
Jun Mukai 2014/02/17 19:48:43 suggestion from the other reviewer. We created 'no
ui::ResourceBundle& rb = ui::ResourceBundle::GetSharedInstance();
notification_icon = rb.GetImageNamed(IDR_EXTENSION_DEFAULT_ICON);
}
@@ -180,42 +181,13 @@ void NotificationImageReady(
GURL() /* empty origin */,
base::string16(),
message,
- icon,
+ notification_icon,
base::string16(),
delegate.get(),
profile);
}
#endif
-// Show a popup notification balloon with a crash message for a given app/
-// extension.
-void ShowBalloon(const Extension* extension, Profile* profile) {
-#if defined(ENABLE_NOTIFICATIONS)
- const base::string16 message = l10n_util::GetStringFUTF16(
- extension->is_app() ? IDS_BACKGROUND_CRASHED_APP_BALLOON_MESSAGE :
- IDS_BACKGROUND_CRASHED_EXTENSION_BALLOON_MESSAGE,
- base::UTF8ToUTF16(extension->name()));
- extension_misc::ExtensionIcons size(extension_misc::EXTENSION_ICON_MEDIUM);
- extensions::ExtensionResource resource =
- extensions::IconsInfo::GetIconResource(
- extension, size, ExtensionIconSet::MATCH_SMALLER);
- // We can't just load the image in the Observe method below because, despite
- // what this method is called, it may call the callback synchronously.
- // However, it's possible that the extension went away during the interim,
- // so we'll bind all the pertinent data here.
- extensions::ImageLoader::Get(profile)->LoadImageAsync(
- extension,
- resource,
- gfx::Size(size, size),
- base::Bind(
- &NotificationImageReady,
- extension->name(),
- message,
- make_scoped_refptr(new CrashNotificationDelegate(profile, extension)),
- profile));
-#endif
-}
-
void ReloadExtension(const std::string& extension_id, Profile* profile) {
if (g_browser_process->IsShuttingDown() ||
!g_browser_process->profile_manager()->IsValidProfile(profile)) {
@@ -280,6 +252,41 @@ void BackgroundContentsService::
restart_delay_in_ms_ = restart_delay_in_ms;
}
+// static
+std::string BackgroundContentsService::GetNotificationIdForExtension(
+ const std::string& extension_id) {
+ return kNotificationPrefix + extension_id;
+}
+
+// static
+void BackgroundContentsService::ShowBalloon(const Extension* extension,
+ Profile* profile) {
+#if defined(ENABLE_NOTIFICATIONS)
+ const base::string16 message = l10n_util::GetStringFUTF16(
+ extension->is_app() ? IDS_BACKGROUND_CRASHED_APP_BALLOON_MESSAGE :
+ IDS_BACKGROUND_CRASHED_EXTENSION_BALLOON_MESSAGE,
+ base::UTF8ToUTF16(extension->name()));
+ extension_misc::ExtensionIcons size(extension_misc::EXTENSION_ICON_MEDIUM);
+ extensions::ExtensionResource resource =
+ extensions::IconsInfo::GetIconResource(
+ extension, size, ExtensionIconSet::MATCH_SMALLER);
+ // We can't just load the image in the Observe method below because, despite
+ // what this method is called, it may call the callback synchronously.
+ // However, it's possible that the extension went away during the interim,
+ // so we'll bind all the pertinent data here.
+ extensions::ImageLoader::Get(profile)->LoadImageAsync(
+ extension,
+ resource,
+ gfx::Size(size, size),
+ base::Bind(
+ &NotificationImageReady,
+ extension->name(),
+ message,
+ make_scoped_refptr(new CrashNotificationDelegate(profile, extension)),
+ profile));
+#endif
+}
+
std::vector<BackgroundContents*>
BackgroundContentsService::GetBackgroundContents() const
{

Powered by Google App Engine
This is Rietveld 408576698