diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java index 2f1f59c2de..61b3979024 100644 --- a/src/com/android/launcher3/Launcher.java +++ b/src/com/android/launcher3/Launcher.java @@ -1342,6 +1342,7 @@ public class Launcher extends StatefulActivity // Setup Apps mAppsView = findViewById(R.id.apps_view); + mAppsView.setAllAppsTransitionController(mAllAppsController); // Setup Scrim mScrimView = findViewById(R.id.scrim_view); diff --git a/src/com/android/launcher3/allapps/ActivityAllAppsContainerView.java b/src/com/android/launcher3/allapps/ActivityAllAppsContainerView.java index 9fb0e71463..c3d24f995e 100644 --- a/src/com/android/launcher3/allapps/ActivityAllAppsContainerView.java +++ b/src/com/android/launcher3/allapps/ActivityAllAppsContainerView.java @@ -155,6 +155,7 @@ public class ActivityAllAppsContainerView private int mHeaderColor; private int mBottomSheetBackgroundColor; private int mTabsProtectionAlpha; + @Nullable private AllAppsTransitionController mAllAppsTransitionController; public ActivityAllAppsContainerView(Context context) { this(context, null); @@ -292,6 +293,11 @@ public class ActivityAllAppsContainerView animateToSearchState(goingToSearch, DEFAULT_SEARCH_TRANSITION_DURATION_MS); } + public void setAllAppsTransitionController( + AllAppsTransitionController allAppsTransitionController) { + mAllAppsTransitionController = allAppsTransitionController; + } + private void animateToSearchState(boolean goingToSearch, long durationMs) { if (!mSearchTransitionController.isRunning() && goingToSearch == isSearching()) { return; @@ -299,6 +305,9 @@ public class ActivityAllAppsContainerView if (goingToSearch) { // Fade out the button to pause work apps. mWorkManager.onActivePageChanged(SEARCH); + } else if (mAllAppsTransitionController != null) { + // If exiting search, revert predictive back scale on all apps + mAllAppsTransitionController.animateAllAppsToNoScale(); } mSearchTransitionController.animateToSearchState(goingToSearch, durationMs, /* onEndRunnable = */ () -> { diff --git a/src/com/android/launcher3/allapps/AllAppsTransitionController.java b/src/com/android/launcher3/allapps/AllAppsTransitionController.java index 394a7d7c35..4a1c3347c9 100644 --- a/src/com/android/launcher3/allapps/AllAppsTransitionController.java +++ b/src/com/android/launcher3/allapps/AllAppsTransitionController.java @@ -301,6 +301,13 @@ public class AllAppsTransitionController } } + /** Animate all apps view to 1f scale. */ + public void animateAllAppsToNoScale() { + mAllAppScale.animateToValue(1f) + .setDuration(REVERT_SWIPE_ALL_APPS_TO_HOME_ANIMATION_DURATION_MS) + .start(); + } + /** * Creates an animation which updates the vertical transition progress and updates all the * dependent UI using various animation events