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

Unified Diff: chrome/browser/ui/views/ash/balloon_view_ash.cc

Issue 11639041: Added support for image notifications. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix bug detected by try bots. Created 7 years, 12 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
« no previous file with comments | « chrome/browser/ui/views/ash/balloon_view_ash.h ('k') | ui/message_center/message_center.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: chrome/browser/ui/views/ash/balloon_view_ash.cc
diff --git a/chrome/browser/ui/views/ash/balloon_view_ash.cc b/chrome/browser/ui/views/ash/balloon_view_ash.cc
index 0f50a5b77c732ae7e1666c02d96a09f06f544285..ec57d60bde137cf2186da12d536731f11880e3fd 100644
--- a/chrome/browser/ui/views/ash/balloon_view_ash.cc
+++ b/chrome/browser/ui/views/ash/balloon_view_ash.cc
@@ -166,6 +166,11 @@ void BalloonViewAsh::SetNotificationIcon(const std::string& id,
GetMessageCenter()->SetNotificationPrimaryIcon(id, image);
}
+void BalloonViewAsh::SetNotificationImage(const std::string& id,
+ const gfx::ImageSkia& image) {
+ GetMessageCenter()->SetNotificationImage(id, image);
+}
+
void BalloonViewAsh::DownloadImages(const Notification& notification) {
// Cancel any previous downloads.
downloads_.clear();
@@ -180,4 +185,19 @@ void BalloonViewAsh::DownloadImages(const Notification& notification) {
base::Bind(&BalloonViewAsh::SetNotificationIcon,
base::Unretained(this), notification.notification_id()))));
}
+
+ // Start a download for the notification's image if appropriate.
+ const base::DictionaryValue* optional_fields = notification.optional_fields();
+ if (optional_fields &&
+ optional_fields->HasKey(ui::notifications::kImageUrlKey)) {
+ string16 url;
+ optional_fields->GetString(ui::notifications::kImageUrlKey, &url);
+ if (!url.empty()) {
+ downloads_.push_back(linked_ptr<ImageDownload>(new ImageDownload(
+ notification, GURL(url),
+ message_center::kNotificationPreferredImageSize,
+ base::Bind(&BalloonViewAsh::SetNotificationImage,
+ base::Unretained(this), notification.notification_id()))));
+ }
+ }
}
« no previous file with comments | « chrome/browser/ui/views/ash/balloon_view_ash.h ('k') | ui/message_center/message_center.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698