From f6a7dcf04f802677dc8e469a3d14e167945cac27 Mon Sep 17 00:00:00 2001 From: Fabian Kozynski Date: Wed, 23 Mar 2022 13:57:06 -0400 Subject: [PATCH] Fix media clipping bounds Set the proper top/bottom bounds for the QS scroller so the clipping is done properly Test: manual in many devices and configurations Fixes: 226318066 Change-Id: I50cb231207991fa6514b10a3a1ca110ff5effc5e --- .../SystemUI/src/com/android/systemui/qs/QSFragment.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/packages/SystemUI/src/com/android/systemui/qs/QSFragment.java b/packages/SystemUI/src/com/android/systemui/qs/QSFragment.java index 4e631046063bf..9d5468dfb2cdb 100644 --- a/packages/SystemUI/src/com/android/systemui/qs/QSFragment.java +++ b/packages/SystemUI/src/com/android/systemui/qs/QSFragment.java @@ -92,6 +92,7 @@ public class QSFragment extends LifecycleFragment implements QS, CommandQueue.Ca private float mLastPanelFraction; private float mSquishinessFraction = 1; private boolean mQsDisabled; + private int[] mTemp = new int[2]; private final RemoteInputQuickSettingsDisabler mRemoteInputQuickSettingsDisabler; private final MediaHost mQsMediaHost; @@ -600,8 +601,11 @@ public class QSFragment extends LifecycleFragment implements QS, CommandQueue.Ca } mQSPanelScrollView.setClipBounds(mQsBounds); - mQsMediaHost.getCurrentClipping().set(0, 0, getView().getMeasuredWidth(), - mQSPanelScrollView.getMeasuredHeight() - mQSPanelScrollView.getPaddingBottom()); + mQSPanelScrollView.getLocationOnScreen(mTemp); + int top = mTemp[1]; + mQsMediaHost.getCurrentClipping().set(0, top, getView().getMeasuredWidth(), + top + mQSPanelScrollView.getMeasuredHeight() + - mQSPanelScrollView.getPaddingBottom()); } private void updateMediaPositions() {