Merge changes from topic "am-c5545bb3-b4fc-4188-890e-09975d70878c" into ub-launcher3-master
* changes:
[automerger] Immediate 2nd quickscrub should not cancel if same state am: f8fafa2847
Immediate 2nd quickscrub should not cancel if same state
diff --git a/src/com/android/launcher3/Workspace.java b/src/com/android/launcher3/Workspace.java
index 3188e6e..abba9c4 100644
--- a/src/com/android/launcher3/Workspace.java
+++ b/src/com/android/launcher3/Workspace.java
@@ -2387,7 +2387,12 @@
private void manageFolderFeedback(CellLayout targetLayout,
int[] targetCell, float distance, DragObject dragObject) {
- if (distance > mMaxDistanceForFolderCreation) return;
+ if (distance > mMaxDistanceForFolderCreation) {
+ if (mDragMode != DRAG_MODE_NONE) {
+ setDragMode(DRAG_MODE_NONE);
+ }
+ return;
+ }
final View dragOverView = mDragTargetLayout.getChildAt(mTargetCell[0], mTargetCell[1]);
ItemInfo info = dragObject.dragInfo;
diff --git a/src/com/android/launcher3/allapps/AllAppsContainerView.java b/src/com/android/launcher3/allapps/AllAppsContainerView.java
index 8993978..4d63c96 100644
--- a/src/com/android/launcher3/allapps/AllAppsContainerView.java
+++ b/src/com/android/launcher3/allapps/AllAppsContainerView.java
@@ -312,6 +312,11 @@
}
}
+ @Override
+ public int getCanvasClipTopForOverscroll() {
+ return mHeader.getTop();
+ }
+
private void rebindAdapters(boolean showTabs) {
rebindAdapters(showTabs, false /* force */);
}
diff --git a/src/com/android/launcher3/views/SpringRelativeLayout.java b/src/com/android/launcher3/views/SpringRelativeLayout.java
index 5022d65..892c59f 100644
--- a/src/com/android/launcher3/views/SpringRelativeLayout.java
+++ b/src/com/android/launcher3/views/SpringRelativeLayout.java
@@ -85,12 +85,24 @@
invalidate();
}
+ /**
+ * Used to clip the canvas when drawing child views during overscroll.
+ */
+ public int getCanvasClipTopForOverscroll() {
+ return 0;
+ }
+
@Override
protected boolean drawChild(Canvas canvas, View child, long drawingTime) {
if (mDampedScrollShift != 0 && mSpringViews.get(child.getId())) {
+ int saveCount = canvas.save();
+
+ canvas.clipRect(0, getCanvasClipTopForOverscroll(), getWidth(), getHeight());
canvas.translate(0, mDampedScrollShift);
boolean result = super.drawChild(canvas, child, drawingTime);
- canvas.translate(0, -mDampedScrollShift);
+
+ canvas.restoreToCount(saveCount);
+
return result;
}
return super.drawChild(canvas, child, drawingTime);
diff --git a/tests/Android.mk b/tests/Android.mk
index e8797a7..f6f02fe 100644
--- a/tests/Android.mk
+++ b/tests/Android.mk
@@ -22,7 +22,7 @@
LOCAL_SRC_FILES := $(call all-java-files-under, src)
LOCAL_FULL_LIBS_MANIFEST_FILES := $(LOCAL_PATH)/AndroidManifest-common.xml
-LOCAL_SDK_VERSION := current
+LOCAL_SDK_VERSION := 28
LOCAL_MIN_SDK_VERSION := 21
LOCAL_PACKAGE_NAME := Launcher3Tests