| Index: chrome/browser/notifications/notification_ui_manager_android.cc
|
| diff --git a/chrome/browser/notifications/notification_ui_manager_android.cc b/chrome/browser/notifications/notification_ui_manager_android.cc
|
| index f2aefc966768f4a0eae16d669239a0c46ed83cea..f36f5303466b347996bacdb04ad7e97404dd1b46 100644
|
| --- a/chrome/browser/notifications/notification_ui_manager_android.cc
|
| +++ b/chrome/browser/notifications/notification_ui_manager_android.cc
|
| @@ -131,11 +131,10 @@ void NotificationUIManagerAndroid::Add(const Notification& notification,
|
| ScopedJavaLocalRef<jstring> body = ConvertUTF16ToJavaString(
|
| env, notification.message());
|
|
|
| - ScopedJavaLocalRef<jobject> icon;
|
| -
|
| - SkBitmap icon_bitmap = notification.icon().AsBitmap();
|
| - if (!icon_bitmap.isNull())
|
| - icon = gfx::ConvertToJavaBitmap(&icon_bitmap);
|
| + ScopedJavaLocalRef<jobject> notification_icon;
|
| + SkBitmap notification_icon_bitmap = notification.icon().AsBitmap();
|
| + if (!notification_icon_bitmap.isNull())
|
| + notification_icon = gfx::ConvertToJavaBitmap(¬ification_icon_bitmap);
|
|
|
| std::vector<base::string16> action_titles_vector;
|
| for (const message_center::ButtonInfo& button : notification.buttons())
|
| @@ -143,6 +142,12 @@ void NotificationUIManagerAndroid::Add(const Notification& notification,
|
| ScopedJavaLocalRef<jobjectArray> action_titles =
|
| base::android::ToJavaArrayOfStrings(env, action_titles_vector);
|
|
|
| + std::vector<SkBitmap> action_icons_vector;
|
| + for (const message_center::ButtonInfo& button : notification.buttons())
|
| + action_icons_vector.push_back(button.icon.AsBitmap());
|
| + ScopedJavaLocalRef<jobjectArray> action_icons =
|
| + gfx::ConvertToJavaBitmaps(action_icons_vector);
|
| +
|
| ScopedJavaLocalRef<jintArray> vibration_pattern =
|
| base::android::ToJavaIntArray(env, notification.vibration_pattern());
|
|
|
| @@ -152,8 +157,8 @@ void NotificationUIManagerAndroid::Add(const Notification& notification,
|
| Java_NotificationUIManager_displayNotification(
|
| env, java_object_.obj(), persistent_notification_id, origin.obj(),
|
| profile_id.obj(), profile->IsOffTheRecord(), tag.obj(), title.obj(),
|
| - body.obj(), icon.obj(), vibration_pattern.obj(), notification.silent(),
|
| - action_titles.obj());
|
| + body.obj(), notification_icon.obj(), vibration_pattern.obj(),
|
| + notification.silent(), action_titles.obj(), action_icons.obj());
|
|
|
| regenerated_notification_infos_[persistent_notification_id] =
|
| std::make_pair(origin_url.spec(), notification.tag());
|
|
|