Fix live tile overlay clipping part of the screen during swipe up to home animation
Change-Id: I72cd99d145a251a8607ec40abcbc9b58fe32e938
Fixes: 128711026
Test: Manual
diff --git a/quickstep/recents_ui_overrides/src/com/android/quickstep/WindowTransformSwipeHandler.java b/quickstep/recents_ui_overrides/src/com/android/quickstep/WindowTransformSwipeHandler.java
index 0065cb5..10180f5 100644
--- a/quickstep/recents_ui_overrides/src/com/android/quickstep/WindowTransformSwipeHandler.java
+++ b/quickstep/recents_ui_overrides/src/com/android/quickstep/WindowTransformSwipeHandler.java
@@ -931,7 +931,7 @@
HomeAnimationFactory homeAnimationFactory) {
final RemoteAnimationTargetSet targetSet = mRecentsAnimationWrapper.targetSet;
final RectF startRect = new RectF(mClipAnimationHelper.applyTransform(targetSet,
- mTransformParams.setProgress(startProgress)));
+ mTransformParams.setProgress(startProgress), false /* launcherOnTop */));
final RectF targetRect = homeAnimationFactory.getWindowTargetRect();
final View floatingView = homeAnimationFactory.getFloatingView();
@@ -956,7 +956,8 @@
windowAlphaThreshold, 0f, 1f, Interpolators.LINEAR);
mTransformParams.setCurrentRectAndTargetAlpha(currentRect, 1f - iconAlpha)
.setSyncTransactionApplier(mSyncTransactionApplier);
- mClipAnimationHelper.applyTransform(targetSet, mTransformParams);
+ mClipAnimationHelper.applyTransform(targetSet, mTransformParams,
+ false /* launcherOnTop */);
if (isFloatingIconView) {
((FloatingIconView) floatingView).update(currentRect, iconAlpha, progress,
@@ -968,6 +969,7 @@
@Override
public void onAnimationStart(Animator animation) {
homeAnim.dispatchOnStart();
+ mActivity.getRootView().getOverlay().remove(mLiveTileOverlay);
}
@Override
diff --git a/quickstep/recents_ui_overrides/src/com/android/quickstep/util/ClipAnimationHelper.java b/quickstep/recents_ui_overrides/src/com/android/quickstep/util/ClipAnimationHelper.java
index 4450b4b..d2cd83f 100644
--- a/quickstep/recents_ui_overrides/src/com/android/quickstep/util/ClipAnimationHelper.java
+++ b/quickstep/recents_ui_overrides/src/com/android/quickstep/util/ClipAnimationHelper.java
@@ -149,6 +149,11 @@
}
public RectF applyTransform(RemoteAnimationTargetSet targetSet, TransformParams params) {
+ return applyTransform(targetSet, params, true /* launcherOnTop */);
+ }
+
+ public RectF applyTransform(RemoteAnimationTargetSet targetSet, TransformParams params,
+ boolean launcherOnTop) {
if (params.currentRect == null) {
RectF currentRect;
mTmpRectF.set(mTargetRect);
@@ -189,7 +194,7 @@
}
}
alpha = mTaskAlphaCallback.apply(app, params.targetAlpha);
- } else if (ENABLE_QUICKSTEP_LIVE_TILE.get()) {
+ } else if (ENABLE_QUICKSTEP_LIVE_TILE.get() && launcherOnTop) {
crop = null;
layer = Integer.MAX_VALUE;
}