From 07381950ec0234d44796e5d5932d436576b48e1b Mon Sep 17 00:00:00 2001 From: Jeff DeCew Date: Sat, 21 May 2022 11:19:28 +0000 Subject: Fix clipTopAmount when read in 2 more critical places * When determining the size of the rectangle made available for the a11y services (e.g. talkback) * When determining which child view is being touched by our custom logic Test: reproduce the bug, then navigate the screen with talkback; notice that the rectangle is correctly sized Bug: 230080345 Change-Id: I01293c0aecbeee559e97f348ff7c4151a64538ab --- .../com/android/systemui/statusbar/notification/row/ExpandableView.java | 2 +- .../statusbar/notification/stack/NotificationChildrenContainer.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableView.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableView.java index 22a6b0a4bae4..9e1f9ba0dee3 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableView.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/row/ExpandableView.java @@ -422,7 +422,7 @@ public abstract class ExpandableView extends FrameLayout implements Dumpable { outRect.top += getTop() + getTranslationY(); } outRect.bottom = outRect.top + getActualHeight(); - outRect.top += getClipTopAmount(); + outRect.top += Math.max(0, getClipTopAmount()); } public boolean isSummaryWithChildren() { 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 dad06d91dea1..34fce4c29c25 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 @@ -855,7 +855,7 @@ public class NotificationChildrenContainer extends ViewGroup for (int childIdx = 0; childIdx < count; childIdx++) { ExpandableNotificationRow slidingChild = mAttachedChildren.get(childIdx); float childTop = slidingChild.getTranslationY(); - float top = childTop + slidingChild.getClipTopAmount(); + float top = childTop + Math.max(0, slidingChild.getClipTopAmount()); float bottom = childTop + slidingChild.getActualHeight(); if (y >= top && y <= bottom) { return slidingChild; -- cgit v1.2.3-59-g8ed1b