summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--api/current.txt2
-rw-r--r--core/api/current.txt2
-rw-r--r--core/java/android/app/Notification.java34
3 files changed, 38 insertions, 0 deletions
diff --git a/api/current.txt b/api/current.txt
index 6459eb4c548a..2881025e54cf 100644
--- a/api/current.txt
+++ b/api/current.txt
@@ -5528,6 +5528,7 @@ package android.app {
field @Deprecated public static final String EXTRA_PEOPLE = "android.people";
field public static final String EXTRA_PEOPLE_LIST = "android.people.list";
field public static final String EXTRA_PICTURE = "android.picture";
+ field public static final String EXTRA_PICTURE_CONTENT_DESCRIPTION = "android.pictureContentDescription";
field public static final String EXTRA_PROGRESS = "android.progress";
field public static final String EXTRA_PROGRESS_INDETERMINATE = "android.progressIndeterminate";
field public static final String EXTRA_PROGRESS_MAX = "android.progressMax";
@@ -5673,6 +5674,7 @@ package android.app {
method public android.app.Notification.BigPictureStyle bigLargeIcon(android.graphics.Bitmap);
method public android.app.Notification.BigPictureStyle bigLargeIcon(android.graphics.drawable.Icon);
method public android.app.Notification.BigPictureStyle bigPicture(android.graphics.Bitmap);
+ method @NonNull public android.app.Notification.BigPictureStyle bigPictureContentDescription(@Nullable CharSequence);
method public android.app.Notification.BigPictureStyle setBigContentTitle(CharSequence);
method public android.app.Notification.BigPictureStyle setSummaryText(CharSequence);
}
diff --git a/core/api/current.txt b/core/api/current.txt
index 05b57af1dccd..70bd0d9412ac 100644
--- a/core/api/current.txt
+++ b/core/api/current.txt
@@ -5528,6 +5528,7 @@ package android.app {
field @Deprecated public static final String EXTRA_PEOPLE = "android.people";
field public static final String EXTRA_PEOPLE_LIST = "android.people.list";
field public static final String EXTRA_PICTURE = "android.picture";
+ field public static final String EXTRA_PICTURE_CONTENT_DESCRIPTION = "android.pictureContentDescription";
field public static final String EXTRA_PROGRESS = "android.progress";
field public static final String EXTRA_PROGRESS_INDETERMINATE = "android.progressIndeterminate";
field public static final String EXTRA_PROGRESS_MAX = "android.progressMax";
@@ -5673,6 +5674,7 @@ package android.app {
method public android.app.Notification.BigPictureStyle bigLargeIcon(android.graphics.Bitmap);
method public android.app.Notification.BigPictureStyle bigLargeIcon(android.graphics.drawable.Icon);
method public android.app.Notification.BigPictureStyle bigPicture(android.graphics.Bitmap);
+ method @NonNull public android.app.Notification.BigPictureStyle bigPictureContentDescription(@Nullable CharSequence);
method public android.app.Notification.BigPictureStyle setBigContentTitle(CharSequence);
method public android.app.Notification.BigPictureStyle setSummaryText(CharSequence);
}
diff --git a/core/java/android/app/Notification.java b/core/java/android/app/Notification.java
index a1abe3d8190b..8cafaa897ad8 100644
--- a/core/java/android/app/Notification.java
+++ b/core/java/android/app/Notification.java
@@ -1147,6 +1147,14 @@ public class Notification implements Parcelable
public static final String EXTRA_PICTURE = "android.picture";
/**
+ * {@link #extras} key: this is a content description of the big picture supplied from
+ * {@link BigPictureStyle#bigPicture(Bitmap)}, supplied to
+ * {@link BigPictureStyle#bigPictureContentDescription(CharSequence)}.
+ */
+ public static final String EXTRA_PICTURE_CONTENT_DESCRIPTION =
+ "android.pictureContentDescription";
+
+ /**
* {@link #extras} key: An array of CharSequences to show in {@link InboxStyle} expanded
* notifications, each of which was supplied to {@link InboxStyle#addLine(CharSequence)}.
*/
@@ -6728,6 +6736,7 @@ public class Notification implements Parcelable
private Bitmap mPicture;
private Icon mBigLargeIcon;
private boolean mBigLargeIconSet = false;
+ private CharSequence mPictureContentDescription;
public BigPictureStyle() {
}
@@ -6758,6 +6767,16 @@ public class Notification implements Parcelable
}
/**
+ * Set the content description of the big picture.
+ */
+ @NonNull
+ public BigPictureStyle bigPictureContentDescription(
+ @Nullable CharSequence contentDescription) {
+ mPictureContentDescription = contentDescription;
+ return this;
+ }
+
+ /**
* @hide
*/
public Bitmap getBigPicture() {
@@ -6870,6 +6889,11 @@ public class Notification implements Parcelable
}
contentView.setImageViewBitmap(R.id.big_picture, mPicture);
+
+ if (mPictureContentDescription != null) {
+ contentView.setContentDescription(R.id.big_picture, mPictureContentDescription);
+ }
+
return contentView;
}
@@ -6882,6 +6906,10 @@ public class Notification implements Parcelable
if (mBigLargeIconSet) {
extras.putParcelable(EXTRA_LARGE_ICON_BIG, mBigLargeIcon);
}
+ if (mPictureContentDescription != null) {
+ extras.putCharSequence(EXTRA_PICTURE_CONTENT_DESCRIPTION,
+ mPictureContentDescription);
+ }
extras.putParcelable(EXTRA_PICTURE, mPicture);
}
@@ -6896,6 +6924,12 @@ public class Notification implements Parcelable
mBigLargeIconSet = true;
mBigLargeIcon = extras.getParcelable(EXTRA_LARGE_ICON_BIG);
}
+
+ if (extras.containsKey(EXTRA_PICTURE_CONTENT_DESCRIPTION)) {
+ mPictureContentDescription =
+ extras.getCharSequence(EXTRA_PICTURE_CONTENT_DESCRIPTION);
+ }
+
mPicture = extras.getParcelable(EXTRA_PICTURE);
}