diff --git a/api/current.txt b/api/current.txt index 793566f682608..9bfd0102aea48 100644 --- a/api/current.txt +++ b/api/current.txt @@ -5245,6 +5245,7 @@ package android.app { method public int getCustomSizePreset(); method public android.app.PendingIntent getDisplayIntent(); method public int getGravity(); + method public boolean getHintAmbientBigPicture(); method public boolean getHintAvoidBackgroundClipping(); method public boolean getHintContentIntentLaunchesActivity(); method public boolean getHintHideIcon(); @@ -5261,6 +5262,7 @@ package android.app { method public android.app.Notification.WearableExtender setCustomSizePreset(int); method public android.app.Notification.WearableExtender setDisplayIntent(android.app.PendingIntent); method public android.app.Notification.WearableExtender setGravity(int); + method public android.app.Notification.WearableExtender setHintAmbientBigPicture(boolean); method public android.app.Notification.WearableExtender setHintAvoidBackgroundClipping(boolean); method public android.app.Notification.WearableExtender setHintContentIntentLaunchesActivity(boolean); method public android.app.Notification.WearableExtender setHintHideIcon(boolean); diff --git a/api/system-current.txt b/api/system-current.txt index e38120480582d..9eeb8f7dea7e8 100644 --- a/api/system-current.txt +++ b/api/system-current.txt @@ -5380,6 +5380,7 @@ package android.app { method public int getCustomSizePreset(); method public android.app.PendingIntent getDisplayIntent(); method public int getGravity(); + method public boolean getHintAmbientBigPicture(); method public boolean getHintAvoidBackgroundClipping(); method public boolean getHintContentIntentLaunchesActivity(); method public boolean getHintHideIcon(); @@ -5396,6 +5397,7 @@ package android.app { method public android.app.Notification.WearableExtender setCustomSizePreset(int); method public android.app.Notification.WearableExtender setDisplayIntent(android.app.PendingIntent); method public android.app.Notification.WearableExtender setGravity(int); + method public android.app.Notification.WearableExtender setHintAmbientBigPicture(boolean); method public android.app.Notification.WearableExtender setHintAvoidBackgroundClipping(boolean); method public android.app.Notification.WearableExtender setHintContentIntentLaunchesActivity(boolean); method public android.app.Notification.WearableExtender setHintHideIcon(boolean); diff --git a/api/test-current.txt b/api/test-current.txt index 8e562aee22ae0..e4fad51b637f2 100644 --- a/api/test-current.txt +++ b/api/test-current.txt @@ -5245,6 +5245,7 @@ package android.app { method public int getCustomSizePreset(); method public android.app.PendingIntent getDisplayIntent(); method public int getGravity(); + method public boolean getHintAmbientBigPicture(); method public boolean getHintAvoidBackgroundClipping(); method public boolean getHintContentIntentLaunchesActivity(); method public boolean getHintHideIcon(); @@ -5261,6 +5262,7 @@ package android.app { method public android.app.Notification.WearableExtender setCustomSizePreset(int); method public android.app.Notification.WearableExtender setDisplayIntent(android.app.PendingIntent); method public android.app.Notification.WearableExtender setGravity(int); + method public android.app.Notification.WearableExtender setHintAmbientBigPicture(boolean); method public android.app.Notification.WearableExtender setHintAvoidBackgroundClipping(boolean); method public android.app.Notification.WearableExtender setHintContentIntentLaunchesActivity(boolean); method public android.app.Notification.WearableExtender setHintHideIcon(boolean); diff --git a/core/java/android/app/Notification.java b/core/java/android/app/Notification.java index 39f8e190aeab0..1ad5a0275e1a0 100644 --- a/core/java/android/app/Notification.java +++ b/core/java/android/app/Notification.java @@ -5461,6 +5461,7 @@ public class Notification implements Parcelable private static final int FLAG_HINT_SHOW_BACKGROUND_ONLY = 1 << 2; private static final int FLAG_START_SCROLL_BOTTOM = 1 << 3; private static final int FLAG_HINT_AVOID_BACKGROUND_CLIPPING = 1 << 4; + private static final int FLAG_BIG_PICTURE_AMBIENT = 1 << 5; private static final int FLAG_HINT_CONTENT_INTENT_LAUNCHES_ACTIVITY = 1 << 6; // Default value for flags integer @@ -6028,6 +6029,29 @@ public class Notification implements Parcelable return mHintScreenTimeout; } + /** + * Set a hint that this notification's {@link BigPictureStyle} (if present) should be + * converted to low-bit and displayed in ambient mode, especially useful for barcodes and + * qr codes, as well as other simple black-and-white tickets. + * @param hintAmbientBigPicture {@code true} to enable converstion and ambient. + * @return this object for method chaining + */ + public WearableExtender setHintAmbientBigPicture(boolean hintAmbientBigPicture) { + setFlag(FLAG_BIG_PICTURE_AMBIENT, hintAmbientBigPicture); + return this; + } + + /** + * Get a hint that this notification's {@link BigPictureStyle} (if present) should be + * converted to low-bit and displayed in ambient mode, especially useful for barcodes and + * qr codes, as well as other simple black-and-white tickets. + * @return {@code true} if it should be displayed in ambient, false otherwise + * otherwise. The default value is {@code false} if this was never set. + */ + public boolean getHintAmbientBigPicture() { + return (mFlags & FLAG_BIG_PICTURE_AMBIENT) != 0; + } + /** * Set a hint that this notification's content intent will launch an {@link Activity} * directly, telling the platform that it can generate the appropriate transitions.