Merge "Ignore source hint rect if it is too small" into sc-dev
diff --git a/quickstep/src/com/android/quickstep/util/SwipePipToHomeAnimator.java b/quickstep/src/com/android/quickstep/util/SwipePipToHomeAnimator.java
index 3631130..1062652 100644
--- a/quickstep/src/com/android/quickstep/util/SwipePipToHomeAnimator.java
+++ b/quickstep/src/com/android/quickstep/util/SwipePipToHomeAnimator.java
@@ -121,6 +121,15 @@
mDestinationBoundsAnimation.set(mDestinationBounds);
mSurfaceTransactionHelper = new PipSurfaceTransactionHelper(cornerRadius);
+ if (sourceRectHint != null && (sourceRectHint.width() < destinationBounds.width()
+ || sourceRectHint.height() < destinationBounds.height())) {
+ // This is a situation in which the source hint rect on at least one axis is smaller
+ // than the destination bounds, which presents a problem because we would have to scale
+ // up that axis to fit the bounds. So instead, just fallback to the non-source hint
+ // animation in this case.
+ sourceRectHint = null;
+ }
+
if (sourceRectHint == null) {
mSourceHintRectInsets = null;