From 5ca9df757ab1805f09ea34d8ca1b49c161e55713 Mon Sep 17 00:00:00 2001 From: Alex Chau Date: Thu, 17 Jun 2021 13:37:10 +0100 Subject: [PATCH] Apply dismissScale on TaskView instead of TaskThumbnailView - As icon is hidden while TaskView become focused, there is no need to apply the scaling on TaskThumbnailView only. Apply scaling on TaskView to simplify Bug: 14622874 Test: manual Change-Id: Idb5fc8540649d57a071a42d36388dedcdcf893eb --- quickstep/src/com/android/quickstep/views/TaskView.java | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/quickstep/src/com/android/quickstep/views/TaskView.java b/quickstep/src/com/android/quickstep/views/TaskView.java index 8ed6c14fc4..8b6410508f 100644 --- a/quickstep/src/com/android/quickstep/views/TaskView.java +++ b/quickstep/src/com/android/quickstep/views/TaskView.java @@ -337,6 +337,7 @@ public class TaskView extends FrameLayout implements Reusable { private float mFullscreenProgress; private float mGridProgress; private float mNonGridScale = 1; + private float mDismissScale = 1; private final FullscreenDrawParams mCurrentFullscreenParams; private final StatefulActivity mActivity; @@ -916,9 +917,6 @@ public class TaskView extends FrameLayout implements Reusable { if (mActivity.getDeviceProfile().isTablet && FeatureFlags.ENABLE_OVERVIEW_GRID.get()) { setPivotX(getLayoutDirection() == LAYOUT_DIRECTION_RTL ? 0 : right - left); setPivotY(mSnapshotView.getTop()); - mSnapshotView.setPivotX( - getLayoutDirection() == LAYOUT_DIRECTION_RTL ? 0 : right - left); - mSnapshotView.setPivotY(0); } else { setPivotX((right - left) * 0.5f); setPivotY(mSnapshotView.getTop() + mSnapshotView.getHeight() * 0.5f); @@ -950,8 +948,8 @@ public class TaskView extends FrameLayout implements Reusable { } private void setSnapshotScale(float dismissScale) { - mSnapshotView.setScaleX(dismissScale); - mSnapshotView.setScaleY(dismissScale); + mDismissScale = dismissScale; + applyScale(); } /** @@ -969,6 +967,7 @@ public class TaskView extends FrameLayout implements Reusable { private void applyScale() { float scale = 1; scale *= getPersistentScale(); + scale *= mDismissScale; setScaleX(scale); setScaleY(scale); }