Merge "Refactor DeviceProfile tests based on dump() and use real device dimensions for tests." into tm-qpr-dev
diff --git a/quickstep/src/com/android/quickstep/RecentsAnimationDeviceState.java b/quickstep/src/com/android/quickstep/RecentsAnimationDeviceState.java
index 4fb7e6b..48f0557 100644
--- a/quickstep/src/com/android/quickstep/RecentsAnimationDeviceState.java
+++ b/quickstep/src/com/android/quickstep/RecentsAnimationDeviceState.java
@@ -61,6 +61,7 @@
import android.view.MotionEvent;
import androidx.annotation.BinderThread;
+import androidx.annotation.NonNull;
import com.android.launcher3.Utilities;
import com.android.launcher3.util.DisplayController;
@@ -124,7 +125,7 @@
};
private int mGestureBlockingTaskId = -1;
- private Region mExclusionRegion;
+ private @NonNull Region mExclusionRegion = new Region();
private SystemGestureExclusionListenerCompat mExclusionListener;
public RecentsAnimationDeviceState(Context context) {
@@ -162,6 +163,10 @@
@Override
@BinderThread
public void onExclusionChanged(Region region) {
+ if (region == null) {
+ // Don't think this is possible but just in case, don't let it be null.
+ region = new Region();
+ }
// Assignments are atomic, it should be safe on binder thread
mExclusionRegion = region;
}
@@ -498,7 +503,7 @@
public boolean isInExclusionRegion(MotionEvent event) {
// mExclusionRegion can change on binder thread, use a local instance here.
Region exclusionRegion = mExclusionRegion;
- return mMode == NO_BUTTON && exclusionRegion != null
+ return mMode == NO_BUTTON
&& exclusionRegion.contains((int) event.getX(), (int) event.getY());
}
@@ -587,7 +592,8 @@
pw.println(" isUserUnlocked=" + mIsUserUnlocked);
pw.println(" isOneHandedModeEnabled=" + mIsOneHandedModeEnabled);
pw.println(" isSwipeToNotificationEnabled=" + mIsSwipeToNotificationEnabled);
- pw.println(" deferredGestureRegion=" + mDeferredGestureRegion);
+ pw.println(" deferredGestureRegion=" + mDeferredGestureRegion.getBounds());
+ pw.println(" exclusionRegion=" + mExclusionRegion.getBounds());
pw.println(" pipIsActive=" + mPipIsActive);
mRotationTouchHelper.dump(pw);
}
diff --git a/quickstep/src/com/android/quickstep/views/RecentsView.java b/quickstep/src/com/android/quickstep/views/RecentsView.java
index 5975106..64068ad 100644
--- a/quickstep/src/com/android/quickstep/views/RecentsView.java
+++ b/quickstep/src/com/android/quickstep/views/RecentsView.java
@@ -2238,7 +2238,8 @@
@Nullable AnimatorSet animatorSet, GestureState.GestureEndTarget endTarget,
TaskViewSimulator[] taskViewSimulators) {
mCurrentGestureEndTarget = endTarget;
- if (endTarget == GestureState.GestureEndTarget.RECENTS) {
+ boolean isOverviewEndTarget = endTarget == GestureState.GestureEndTarget.RECENTS;
+ if (isOverviewEndTarget) {
updateGridProperties();
}
@@ -2267,10 +2268,11 @@
}
}
}
+ int overviewProgress = isOverviewEndTarget ? 1 : 0;
if (animatorSet == null) {
- setOverviewProgress(1);
+ setOverviewProgress(overviewProgress);
} else {
- animatorSet.play(ObjectAnimator.ofFloat(this, OVERVIEW_PROGRESS, 1));
+ animatorSet.play(ObjectAnimator.ofFloat(this, OVERVIEW_PROGRESS, overviewProgress));
}
}