From a3643e54a768cbf55a671a9ac7718f1a30dd8715 Mon Sep 17 00:00:00 2001 From: Tracy Zhou Date: Tue, 2 Apr 2019 11:06:31 -0700 Subject: Fix live tile overlay clipping part of the screen during swipe up to home animation Change-Id: I72cd99d145a251a8607ec40abcbc9b58fe32e938 Fixes: 128711026 Test: Manual --- .../src/com/android/quickstep/WindowTransformSwipeHandler.java | 6 ++++-- .../src/com/android/quickstep/util/ClipAnimationHelper.java | 7 ++++++- 2 files changed, 10 insertions(+), 3 deletions(-) (limited to 'quickstep/recents_ui_overrides/src') 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 0065cb5cf..10180f586 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 @@ public class WindowTransformSwipeHandler 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 @@ public class WindowTransformSwipeHandler 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 @@ public class WindowTransformSwipeHandler @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 4450b4b98..d2cd83f2b 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 class ClipAnimationHelper { } 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 @@ public class ClipAnimationHelper { } } 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; } -- cgit v1.2.3