diff options
| -rw-r--r-- | packages/SystemUI/src/com/android/systemui/bubbles/BubbleData.java | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/bubbles/BubbleData.java b/packages/SystemUI/src/com/android/systemui/bubbles/BubbleData.java index 7020f1cb88eb..acbde9fa3efa 100644 --- a/packages/SystemUI/src/com/android/systemui/bubbles/BubbleData.java +++ b/packages/SystemUI/src/com/android/systemui/bubbles/BubbleData.java @@ -366,11 +366,15 @@ public class BubbleData { validShortcutIds.add(info.getId()); } - final Predicate<Bubble> invalidBubblesFromPackage = bubble -> - packageName.equals(bubble.getPackageName()) - && (bubble.getShortcutInfo() == null - || !bubble.getShortcutInfo().isEnabled() - || !validShortcutIds.contains(bubble.getShortcutInfo().getId())); + final Predicate<Bubble> invalidBubblesFromPackage = bubble -> { + final boolean bubbleIsFromPackage = packageName.equals(bubble.getPackageName()); + final boolean hasShortcutIdAndValidShortcut = + bubble.hasMetadataShortcutId() + && bubble.getShortcutInfo() != null + && bubble.getShortcutInfo().isEnabled() + && validShortcutIds.contains(bubble.getShortcutInfo().getId()); + return bubbleIsFromPackage && !hasShortcutIdAndValidShortcut; + }; final Consumer<Bubble> removeBubble = bubble -> dismissBubbleWithKey(bubble.getKey(), reason); |