| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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/notifications/notification_platform_bridge_android.h" | 5 #include "chrome/browser/notifications/notification_platform_bridge_android.h" |
| 6 | 6 |
| 7 #include <utility> | 7 #include <utility> |
| 8 #include <vector> | 8 #include <vector> |
| 9 | 9 |
| 10 #include "base/android/jni_array.h" | 10 #include "base/android/jni_array.h" |
| (...skipping 186 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 197 ConvertUTF8ToJavaString(env, notification_id); | 197 ConvertUTF8ToJavaString(env, notification_id); |
| 198 ScopedJavaLocalRef<jstring> j_origin = | 198 ScopedJavaLocalRef<jstring> j_origin = |
| 199 ConvertUTF8ToJavaString(env, origin_url.spec()); | 199 ConvertUTF8ToJavaString(env, origin_url.spec()); |
| 200 ScopedJavaLocalRef<jstring> tag = | 200 ScopedJavaLocalRef<jstring> tag = |
| 201 ConvertUTF8ToJavaString(env, notification.tag()); | 201 ConvertUTF8ToJavaString(env, notification.tag()); |
| 202 ScopedJavaLocalRef<jstring> title = | 202 ScopedJavaLocalRef<jstring> title = |
| 203 ConvertUTF16ToJavaString(env, notification.title()); | 203 ConvertUTF16ToJavaString(env, notification.title()); |
| 204 ScopedJavaLocalRef<jstring> body = | 204 ScopedJavaLocalRef<jstring> body = |
| 205 ConvertUTF16ToJavaString(env, notification.message()); | 205 ConvertUTF16ToJavaString(env, notification.message()); |
| 206 | 206 |
| 207 ScopedJavaLocalRef<jobject> image; |
| 208 SkBitmap image_bitmap = notification.image().AsBitmap(); |
| 209 if (!image_bitmap.drawsNothing()) |
| 210 image = gfx::ConvertToJavaBitmap(&image_bitmap); |
| 211 |
| 207 ScopedJavaLocalRef<jobject> notification_icon; | 212 ScopedJavaLocalRef<jobject> notification_icon; |
| 208 SkBitmap notification_icon_bitmap = notification.icon().AsBitmap(); | 213 SkBitmap notification_icon_bitmap = notification.icon().AsBitmap(); |
| 209 if (!notification_icon_bitmap.drawsNothing()) | 214 if (!notification_icon_bitmap.drawsNothing()) |
| 210 notification_icon = gfx::ConvertToJavaBitmap(¬ification_icon_bitmap); | 215 notification_icon = gfx::ConvertToJavaBitmap(¬ification_icon_bitmap); |
| 211 | 216 |
| 212 ScopedJavaLocalRef<jobject> badge; | 217 ScopedJavaLocalRef<jobject> badge; |
| 213 SkBitmap badge_bitmap = notification.small_image().AsBitmap(); | 218 SkBitmap badge_bitmap = notification.small_image().AsBitmap(); |
| 214 if (!badge_bitmap.drawsNothing()) | 219 if (!badge_bitmap.drawsNothing()) |
| 215 badge = gfx::ConvertToJavaBitmap(&badge_bitmap); | 220 badge = gfx::ConvertToJavaBitmap(&badge_bitmap); |
| 216 | 221 |
| 217 std::vector<base::string16> action_titles_vector; | 222 std::vector<base::string16> action_titles_vector; |
| 218 for (const message_center::ButtonInfo& button : notification.buttons()) | 223 for (const message_center::ButtonInfo& button : notification.buttons()) |
| 219 action_titles_vector.push_back(button.title); | 224 action_titles_vector.push_back(button.title); |
| 220 ScopedJavaLocalRef<jobjectArray> action_titles = | 225 ScopedJavaLocalRef<jobjectArray> action_titles = |
| 221 base::android::ToJavaArrayOfStrings(env, action_titles_vector); | 226 base::android::ToJavaArrayOfStrings(env, action_titles_vector); |
| 222 | 227 |
| 223 ScopedJavaLocalRef<jobjectArray> action_icons = | 228 ScopedJavaLocalRef<jobjectArray> action_icons = |
| 224 ConvertToJavaBitmaps(notification.buttons()); | 229 ConvertToJavaBitmaps(notification.buttons()); |
| 225 | 230 |
| 226 ScopedJavaLocalRef<jintArray> vibration_pattern = | 231 ScopedJavaLocalRef<jintArray> vibration_pattern = |
| 227 base::android::ToJavaIntArray(env, notification.vibration_pattern()); | 232 base::android::ToJavaIntArray(env, notification.vibration_pattern()); |
| 228 | 233 |
| 229 ScopedJavaLocalRef<jstring> j_profile_id = | 234 ScopedJavaLocalRef<jstring> j_profile_id = |
| 230 ConvertUTF8ToJavaString(env, profile_id); | 235 ConvertUTF8ToJavaString(env, profile_id); |
| 231 | 236 |
| 232 Java_NotificationPlatformBridge_displayNotification( | 237 Java_NotificationPlatformBridge_displayNotification( |
| 233 env, java_object_, j_notification_id, j_origin, j_profile_id, incognito, | 238 env, java_object_, j_notification_id, j_origin, j_profile_id, incognito, |
| 234 tag, webapk_package, title, body, notification_icon, badge, | 239 tag, webapk_package, title, body, image, notification_icon, badge, |
| 235 vibration_pattern, notification.timestamp().ToJavaTime(), | 240 vibration_pattern, notification.timestamp().ToJavaTime(), |
| 236 notification.renotify(), notification.silent(), action_titles, | 241 notification.renotify(), notification.silent(), action_titles, |
| 237 action_icons); | 242 action_icons); |
| 238 | 243 |
| 239 regenerated_notification_infos_[notification_id] = | 244 regenerated_notification_infos_[notification_id] = |
| 240 RegeneratedNotificationInfo(origin_url.spec(), notification.tag(), | 245 RegeneratedNotificationInfo(origin_url.spec(), notification.tag(), |
| 241 ConvertJavaStringToUTF8(env, webapk_package)); | 246 ConvertJavaStringToUTF8(env, webapk_package)); |
| 242 } | 247 } |
| 243 | 248 |
| 244 void NotificationPlatformBridgeAndroid::Close( | 249 void NotificationPlatformBridgeAndroid::Close( |
| (...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 299 RegeneratedNotificationInfo() {} | 304 RegeneratedNotificationInfo() {} |
| 300 | 305 |
| 301 NotificationPlatformBridgeAndroid::RegeneratedNotificationInfo:: | 306 NotificationPlatformBridgeAndroid::RegeneratedNotificationInfo:: |
| 302 RegeneratedNotificationInfo(const std::string& origin, | 307 RegeneratedNotificationInfo(const std::string& origin, |
| 303 const std::string& tag, | 308 const std::string& tag, |
| 304 const std::string& webapk_package) | 309 const std::string& webapk_package) |
| 305 : origin(origin), tag(tag), webapk_package(webapk_package) {} | 310 : origin(origin), tag(tag), webapk_package(webapk_package) {} |
| 306 | 311 |
| 307 NotificationPlatformBridgeAndroid::RegeneratedNotificationInfo:: | 312 NotificationPlatformBridgeAndroid::RegeneratedNotificationInfo:: |
| 308 ~RegeneratedNotificationInfo() {} | 313 ~RegeneratedNotificationInfo() {} |
| OLD | NEW |