diff options
2 files changed, 50 insertions, 21 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRow.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRow.java index 053b4f5cb2ba..a2d563aede1f 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRow.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableNotificationRow.java @@ -2947,6 +2947,11 @@ public class ExpandableNotificationRow extends ActivatableNotificationView if (isAboveShelf() != wasAboveShelf) { mAboveShelfChangedListener.onAboveShelfStateChanged(!wasAboveShelf); } + if (SceneContainerFlag.isEnabled()) { + if (mIsSummaryWithChildren) { + mChildrenContainer.setOnKeyguard(onKeyguard); + } + } } } @@ -4109,7 +4114,7 @@ public class ExpandableNotificationRow extends ActivatableNotificationView pw.print(", alpha: " + getAlpha()); pw.print(", translation: " + getTranslation()); pw.print(", entry dismissable: " + canEntryBeDismissed()); - pw.print(", mOnUserInteractionCallback null: " + (mOnUserInteractionCallback == null)); + pw.print(", mOnUserInteractionCallback==null: " + (mOnUserInteractionCallback == null)); pw.print(", removed: " + isRemoved()); pw.print(", expandAnimationRunning: " + mExpandAnimationRunning); pw.print(", mShowingPublic: " + mShowingPublic); @@ -4122,9 +4127,17 @@ public class ExpandableNotificationRow extends ActivatableNotificationView pw.print(", clipBounds: " + getClipBounds()); if (PromotedNotificationUiForceExpanded.isEnabled()) { pw.print(", isPromotedOngoing: " + isPromotedOngoing()); - pw.print(", isExpandable: " + isExpandable()); - pw.print(", mExpandable: " + mExpandable); } + pw.print(", isExpandable: " + isExpandable()); + pw.print(", mExpandable: " + mExpandable); + pw.print(", isUserExpanded: " + isUserExpanded()); + pw.print(", hasUserChangedExpansion: " + mHasUserChangedExpansion); + pw.print(", isOnKeyguard: " + isOnKeyguard()); + pw.print(", isSummaryWithChildren: " + mIsSummaryWithChildren); + pw.print(", enableNonGroupedExpand: " + mEnableNonGroupedNotificationExpand); + pw.print(", isPinned: " + isPinned()); + pw.print(", expandedWhenPinned: " + mExpandedWhenPinned); + pw.print(", isMinimized: " + mIsMinimized); pw.println(); if (NotificationContentView.INCLUDE_HEIGHTS_TO_DUMP) { @@ -4153,30 +4166,38 @@ public class ExpandableNotificationRow extends ActivatableNotificationView pw.println("Children Container Intrinsic Height: " + mChildrenContainer.getIntrinsicHeight()); pw.println(); - List<ExpandableNotificationRow> notificationChildren = getAttachedChildren(); - pw.print("Children: " + notificationChildren.size() + " {"); - pw.increaseIndent(); - for (ExpandableNotificationRow child : notificationChildren) { - pw.println(); - child.dump(pw, args); - } - pw.decreaseIndent(); - pw.println("}"); - pw.print("Transient Views: " + transientViewCount + " {"); - pw.increaseIndent(); - for (int i = 0; i < transientViewCount; i++) { - pw.println(); - ExpandableView child = (ExpandableView) mChildrenContainer.getTransientView(i); - child.dump(pw, args); - } - pw.decreaseIndent(); - pw.println("}"); + dumpChildren(pw, args); + dumpTransientViews(transientViewCount, pw, args); } else if (mPrivateLayout != null) { mPrivateLayout.dumpSmartReplies(pw); } }); } + private void dumpChildren(IndentingPrintWriter pw, String[] args) { + List<ExpandableNotificationRow> notificationChildren = getAttachedChildren(); + pw.print("Children: " + notificationChildren.size() + " {"); + DumpUtilsKt.withIncreasedIndent(pw, () -> { + for (ExpandableNotificationRow child : notificationChildren) { + pw.println(); + child.dump(pw, args); + } + }); + pw.println("}"); + } + + private void dumpTransientViews(int transientCount, IndentingPrintWriter pw, String[] args) { + pw.print("Transient Views: " + transientCount + " {"); + DumpUtilsKt.withIncreasedIndent(pw, () -> { + for (int i = 0; i < transientCount; i++) { + pw.println(); + ExpandableView child = (ExpandableView) mChildrenContainer.getTransientView(i); + child.dump(pw, args); + } + }); + pw.println("}"); + } + private void dumpHeights(IndentingPrintWriter pw) { pw.print("Heights: "); pw.print("intrinsic", getIntrinsicHeight()); diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationChildrenContainer.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationChildrenContainer.java index b548b5835e1e..ee57d459e71c 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationChildrenContainer.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationChildrenContainer.java @@ -43,6 +43,7 @@ import androidx.annotation.Nullable; import com.android.internal.annotations.VisibleForTesting; import com.android.internal.widget.NotificationExpandButton; import com.android.systemui.res.R; +import com.android.systemui.scene.shared.flag.SceneContainerFlag; import com.android.systemui.statusbar.CrossFadeHelper; import com.android.systemui.statusbar.NotificationGroupingUtil; import com.android.systemui.statusbar.notification.FeedbackIcon; @@ -1713,4 +1714,11 @@ public class NotificationChildrenContainer extends ViewGroup + ", clipBounds: " + getClipBounds() + ", roundableState: " + getRoundableState().debugString() + "}"; } + + public void setOnKeyguard(boolean onKeyguard) { + if (SceneContainerFlag.isUnexpectedlyInLegacyMode()) return; + for (ExpandableNotificationRow child : mAttachedChildren) { + child.setOnKeyguard(onKeyguard); + } + } } |