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

Unified Diff: chrome/android/java/src/org/chromium/chrome/browser/media/ui/MediaNotificationManager.java

Issue 1978833002: [Media, UI] New default large icon in MediaNotification (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: use 0 as invalid resource id Created 4 years, 7 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/android/java/src/org/chromium/chrome/browser/media/ui/MediaNotificationManager.java
diff --git a/chrome/android/java/src/org/chromium/chrome/browser/media/ui/MediaNotificationManager.java b/chrome/android/java/src/org/chromium/chrome/browser/media/ui/MediaNotificationManager.java
index b2233db03f9f78aac9d0747d30bdae4d99337399..4526b71d4eb5502e3ee73aea7860a96c896dd015 100644
--- a/chrome/android/java/src/org/chromium/chrome/browser/media/ui/MediaNotificationManager.java
+++ b/chrome/android/java/src/org/chromium/chrome/browser/media/ui/MediaNotificationManager.java
@@ -381,8 +381,7 @@ public class MediaNotificationManager {
private NotificationCompat.Builder mNotificationBuilder;
private Bitmap mNotificationIcon;
-
- private final Bitmap mDefaultLargeIcon;
+ private Bitmap mDefaultLargeIcon;
// |mMediaNotificationInfo| should be not null if and only if the notification is showing.
private MediaNotificationInfo mMediaNotificationInfo;
@@ -409,9 +408,6 @@ public class MediaNotificationManager {
mPlayDescription = context.getResources().getString(R.string.accessibility_play);
mPauseDescription = context.getResources().getString(R.string.accessibility_pause);
mStopDescription = context.getResources().getString(R.string.accessibility_stop);
-
- mDefaultLargeIcon = BitmapFactory.decodeResource(
- context.getResources(), R.drawable.ic_music_video);
}
/**
@@ -619,10 +615,17 @@ public class MediaNotificationManager {
private void setMediaStyleLayoutForNotificationBuilder(NotificationCompat.Builder builder) {
setMediaStyleNotificationText(builder);
- if (mMediaNotificationInfo.largeIcon != null) {
+ if (!mMediaNotificationInfo.supportsPlayPause()) {
+ builder.setLargeIcon(null);
+ } else if (mMediaNotificationInfo.largeIcon != null) {
builder.setLargeIcon(mMediaNotificationInfo.largeIcon);
- } else if (!TextUtils.equals(Build.VERSION.CODENAME, "N")
- && mMediaNotificationInfo.supportsPlayPause()) {
+ } else if (!isRunningN()) {
+ if (mDefaultLargeIcon == null) {
+ int resourceId = (mMediaNotificationInfo.defaultLargeIcon != 0)
+ ? mMediaNotificationInfo.defaultLargeIcon : R.drawable.audio_playing_square;
+ mDefaultLargeIcon = BitmapFactory.decodeResource(
+ mContext.getResources(), resourceId);
+ }
builder.setLargeIcon(mDefaultLargeIcon);
}
// TODO(zqzhang): It's weird that setShowWhen() don't work on K. Calling setWhen() to force
@@ -726,8 +729,7 @@ public class MediaNotificationManager {
private void setMediaStyleNotificationText(NotificationCompat.Builder builder) {
builder.setContentTitle(mMediaNotificationInfo.metadata.getTitle());
String artistAndAlbumText = getArtistAndAlbumText(mMediaNotificationInfo.metadata);
- // TODO(zqzhang): update this when N is released.
- if (TextUtils.equals(Build.VERSION.CODENAME, "N") || !artistAndAlbumText.isEmpty()) {
+ if (isRunningN() || !artistAndAlbumText.isEmpty()) {
builder.setContentText(artistAndAlbumText);
builder.setSubText(mMediaNotificationInfo.origin);
} else {
@@ -744,4 +746,14 @@ public class MediaNotificationManager {
}
return artist + " - " + album;
}
+
+ private boolean isRunningN() {
+ // TODO(zqzhang): update this when N is released.
+ if (TextUtils.equals(Build.VERSION.CODENAME, "N")) return true;
+ if (TextUtils.equals(Build.VERSION.CODENAME, "REL")
+ && Build.VERSION.SDK_INT > Build.VERSION_CODES.M) {
+ return true;
+ }
+ return false;
+ }
}

Powered by Google App Engine
This is Rietveld 408576698