Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 60b97de7 authored by shawnlin's avatar shawnlin
Browse files

Play the nav bar animation for app launch from recent in live tile

Bug: 189278432
Test: manual - launch an app from recent in live tile mode
Change-Id: I9a39cdbbe0b8b9ee6d11a3ee53936d2fea699dd8
parent ca0a3bf7
Loading
Loading
Loading
Loading
+9 −0
Original line number Diff line number Diff line
@@ -18,6 +18,7 @@ package com.android.quickstep;
import static com.android.launcher3.util.Executors.MAIN_EXECUTOR;
import static com.android.launcher3.util.Executors.UI_HELPER_EXECUTOR;

import android.view.IRecentsAnimationController;
import android.view.SurfaceControl;
import android.window.PictureInPictureSurfaceTransaction;

@@ -162,6 +163,14 @@ public class RecentsAnimationController {
        UI_HELPER_EXECUTOR.execute(() -> mController.detachNavigationBarFromApp(moveHomeToTop));
    }

    /**
     * @see IRecentsAnimationController#animateNavigationBarToApp(long)
     */
    @UiThread
    public void animateNavigationBarToApp(long duration) {
        UI_HELPER_EXECUTOR.execute(() -> mController.animateNavigationBarToApp(duration));
    }

    /**
     * Sets the final surface transaction on a Task. This is used by Launcher to notify the system
     * that animating Activity to PiP has completed and the associated task surface should be
+8 −0
Original line number Diff line number Diff line
@@ -263,6 +263,14 @@ public final class TaskViewUtils {
                        finalParams.applySurfaceParams(navBuilder.build());
                    }
                });
            } else if (inLiveTileMode) {
                // There is no transition animation for app launch from recent in live tile mode so
                // we have to trigger the navigation bar animation from system here.
                final RecentsAnimationController controller =
                        recentsView.getRecentsAnimationController();
                if (controller != null) {
                    controller.animateNavigationBarToApp(RECENTS_LAUNCH_DURATION);
                }
            }
            topMostSimulator = tsv;
        }
+6 −0
Original line number Diff line number Diff line
@@ -3843,4 +3843,10 @@ public abstract class RecentsView<ACTIVITY_TYPE extends StatefulActivity<STATE_T
        // The Black blending is temporary until we have the proper color token.
        return ColorUtils.blendARGB(Color.BLACK, baseColor, 0.25f);
    }

    /** Get the RecentsAnimationController */
    @Nullable
    public RecentsAnimationController getRecentsAnimationController() {
        return mRecentsAnimationController;
    }
}