Bound overscroll shift amount to avoid content from drawing on top (Y-val)
of the QSB.
Bug: 77538324
Change-Id: Idabc4365c5fe5cb1894fa0eb84ea9309b85f99a3
diff --git a/src/com/android/launcher3/allapps/AllAppsContainerView.java b/src/com/android/launcher3/allapps/AllAppsContainerView.java
index ae41794..8b21bbd 100644
--- a/src/com/android/launcher3/allapps/AllAppsContainerView.java
+++ b/src/com/android/launcher3/allapps/AllAppsContainerView.java
@@ -47,6 +47,7 @@
import com.android.launcher3.ItemInfo;
import com.android.launcher3.Launcher;
import com.android.launcher3.R;
+import com.android.launcher3.Utilities;
import com.android.launcher3.config.FeatureFlags;
import com.android.launcher3.graphics.ColorScrim;
import com.android.launcher3.keyboard.FocusedItemDecorator;
@@ -125,6 +126,13 @@
}
@Override
+ protected void setDampedScrollShift(float shift) {
+ // Bound the shift amount to avoid content from drawing on top (Y-val) of the QSB.
+ float maxShift = getSearchView().getHeight() / 2f;
+ super.setDampedScrollShift(Utilities.boundToRange(shift, -maxShift, maxShift));
+ }
+
+ @Override
public void onDeviceProfileChanged(DeviceProfile dp) {
for (AdapterHolder holder : mAH) {
if (holder.recyclerView != null) {
diff --git a/src/com/android/launcher3/views/SpringRelativeLayout.java b/src/com/android/launcher3/views/SpringRelativeLayout.java
index a508191..598738b 100644
--- a/src/com/android/launcher3/views/SpringRelativeLayout.java
+++ b/src/com/android/launcher3/views/SpringRelativeLayout.java
@@ -97,7 +97,7 @@
mActiveEdge = edge;
}
- private void setDampedScrollShift(float shift) {
+ protected void setDampedScrollShift(float shift) {
if (shift != mDampedScrollShift) {
mDampedScrollShift = shift;
invalidate();