Loading quickstep/recents_ui_overrides/src/com/android/quickstep/AppToOverviewAnimationProvider.java +1 −1 Original line number Diff line number Diff line Loading @@ -48,7 +48,7 @@ import com.android.systemui.shared.system.TransactionCompat; * * @param <T> activity that contains the overview */ final class AppToOverviewAnimationProvider<T extends BaseDraggingActivity> implements final class AppToOverviewAnimationProvider<T extends BaseDraggingActivity> extends RemoteAnimationProvider { private static final long RECENTS_LAUNCH_DURATION = 250; Loading quickstep/recents_ui_overrides/src/com/android/quickstep/OverviewCommandHelper.java +10 −1 Original line number Diff line number Diff line Loading @@ -33,6 +33,7 @@ import com.android.launcher3.appprediction.PredictionUiStateManager; import com.android.launcher3.logging.UserEventDispatcher; import com.android.launcher3.userevent.nano.LauncherLogProto; import com.android.quickstep.util.ActivityInitListener; import com.android.quickstep.util.RemoteAnimationProvider; import com.android.quickstep.views.RecentsView; import com.android.quickstep.views.TaskView; import com.android.systemui.shared.system.ActivityManagerWrapper; Loading Loading @@ -187,7 +188,15 @@ public class OverviewCommandHelper { // Otherwise, start overview. mListener = mActivityInterface.createActivityInitListener(this::onActivityReady); mListener.registerAndStartActivity(mOverviewComponentObserver.getOverviewIntent(), this::createWindowAnimation, mContext, MAIN_EXECUTOR.getHandler(), new RemoteAnimationProvider() { @Override public AnimatorSet createWindowAnimation( RemoteAnimationTargetCompat[] appTargets, RemoteAnimationTargetCompat[] wallpaperTargets) { return RecentsActivityCommand.this.createWindowAnimation(appTargets, wallpaperTargets); } }, mContext, MAIN_EXECUTOR.getHandler(), mAnimationProvider.getRecentsLaunchDuration()); } Loading quickstep/src/com/android/launcher3/BaseQuickstepLauncher.java +17 −11 Original line number Diff line number Diff line Loading @@ -52,10 +52,12 @@ import com.android.quickstep.SysUINavigationMode; import com.android.quickstep.SysUINavigationMode.Mode; import com.android.quickstep.SysUINavigationMode.NavigationModeChangeListener; import com.android.quickstep.SystemUiProxy; import com.android.quickstep.util.RemoteAnimationProvider; import com.android.quickstep.util.RemoteFadeOutAnimationListener; import com.android.quickstep.util.ShelfPeekAnim; import com.android.quickstep.views.RecentsView; import com.android.systemui.shared.system.ActivityManagerWrapper; import com.android.systemui.shared.system.RemoteAnimationTargetCompat; import java.util.stream.Stream; Loading Loading @@ -262,7 +264,10 @@ public abstract class BaseQuickstepLauncher extends Launcher public void useFadeOutAnimationForLauncherStart(CancellationSignal signal) { QuickstepAppTransitionManagerImpl appTransitionManager = (QuickstepAppTransitionManagerImpl) getAppTransitionManager(); appTransitionManager.setRemoteAnimationProvider((appTargets, wallpaperTargets) -> { appTransitionManager.setRemoteAnimationProvider(new RemoteAnimationProvider() { @Override public AnimatorSet createWindowAnimation(RemoteAnimationTargetCompat[] appTargets, RemoteAnimationTargetCompat[] wallpaperTargets) { // On the first call clear the reference. signal.cancel(); Loading @@ -273,6 +278,7 @@ public abstract class BaseQuickstepLauncher extends Launcher AnimatorSet anim = new AnimatorSet(); anim.play(fadeAnimation); return anim; } }, signal); } Loading quickstep/src/com/android/launcher3/LauncherAnimationRunner.java +6 −1 Original line number Diff line number Diff line Loading @@ -34,7 +34,8 @@ import com.android.systemui.shared.system.RemoteAnimationRunnerCompat; import com.android.systemui.shared.system.RemoteAnimationTargetCompat; @TargetApi(Build.VERSION_CODES.P) public abstract class LauncherAnimationRunner implements RemoteAnimationRunnerCompat { public abstract class LauncherAnimationRunner implements RemoteAnimationRunnerCompat, WrappedAnimationRunnerImpl { private final Handler mHandler; private final boolean mStartAtFrontOfQueue; Loading @@ -49,6 +50,10 @@ public abstract class LauncherAnimationRunner implements RemoteAnimationRunnerCo mStartAtFrontOfQueue = startAtFrontOfQueue; } public Handler getHandler() { return mHandler; } // Called only in R+ platform @BinderThread public void onAnimationStart(RemoteAnimationTargetCompat[] appTargets, Loading quickstep/src/com/android/launcher3/LauncherInitListener.java +14 −8 Original line number Diff line number Diff line Loading @@ -15,6 +15,7 @@ */ package com.android.launcher3; import android.animation.AnimatorSet; import android.annotation.TargetApi; import android.content.Context; import android.content.Intent; Loading @@ -25,6 +26,7 @@ import android.os.Handler; import com.android.launcher3.util.ActivityTracker; import com.android.quickstep.util.ActivityInitListener; import com.android.quickstep.util.RemoteAnimationProvider; import com.android.systemui.shared.system.RemoteAnimationTargetCompat; import java.util.function.BiPredicate; Loading @@ -51,7 +53,10 @@ public class LauncherInitListener extends ActivityInitListener<Launcher> { // Set a one-time animation provider. After the first call, this will get cleared. // TODO: Probably also check the intended target id. CancellationSignal cancellationSignal = new CancellationSignal(); appTransitionManager.setRemoteAnimationProvider((appTargets, wallpaperTargets) -> { appTransitionManager.setRemoteAnimationProvider(new RemoteAnimationProvider() { @Override public AnimatorSet createWindowAnimation(RemoteAnimationTargetCompat[] appTargets, RemoteAnimationTargetCompat[] wallpaperTargets) { // On the first call clear the reference. cancellationSignal.cancel(); Loading @@ -62,6 +67,7 @@ public class LauncherInitListener extends ActivityInitListener<Launcher> { return provider.createWindowAnimation(appTargets, wallpaperTargets); } return null; } }, cancellationSignal); } launcher.deferOverlayCallbacksUntilNextResumeOrStop(); Loading Loading
quickstep/recents_ui_overrides/src/com/android/quickstep/AppToOverviewAnimationProvider.java +1 −1 Original line number Diff line number Diff line Loading @@ -48,7 +48,7 @@ import com.android.systemui.shared.system.TransactionCompat; * * @param <T> activity that contains the overview */ final class AppToOverviewAnimationProvider<T extends BaseDraggingActivity> implements final class AppToOverviewAnimationProvider<T extends BaseDraggingActivity> extends RemoteAnimationProvider { private static final long RECENTS_LAUNCH_DURATION = 250; Loading
quickstep/recents_ui_overrides/src/com/android/quickstep/OverviewCommandHelper.java +10 −1 Original line number Diff line number Diff line Loading @@ -33,6 +33,7 @@ import com.android.launcher3.appprediction.PredictionUiStateManager; import com.android.launcher3.logging.UserEventDispatcher; import com.android.launcher3.userevent.nano.LauncherLogProto; import com.android.quickstep.util.ActivityInitListener; import com.android.quickstep.util.RemoteAnimationProvider; import com.android.quickstep.views.RecentsView; import com.android.quickstep.views.TaskView; import com.android.systemui.shared.system.ActivityManagerWrapper; Loading Loading @@ -187,7 +188,15 @@ public class OverviewCommandHelper { // Otherwise, start overview. mListener = mActivityInterface.createActivityInitListener(this::onActivityReady); mListener.registerAndStartActivity(mOverviewComponentObserver.getOverviewIntent(), this::createWindowAnimation, mContext, MAIN_EXECUTOR.getHandler(), new RemoteAnimationProvider() { @Override public AnimatorSet createWindowAnimation( RemoteAnimationTargetCompat[] appTargets, RemoteAnimationTargetCompat[] wallpaperTargets) { return RecentsActivityCommand.this.createWindowAnimation(appTargets, wallpaperTargets); } }, mContext, MAIN_EXECUTOR.getHandler(), mAnimationProvider.getRecentsLaunchDuration()); } Loading
quickstep/src/com/android/launcher3/BaseQuickstepLauncher.java +17 −11 Original line number Diff line number Diff line Loading @@ -52,10 +52,12 @@ import com.android.quickstep.SysUINavigationMode; import com.android.quickstep.SysUINavigationMode.Mode; import com.android.quickstep.SysUINavigationMode.NavigationModeChangeListener; import com.android.quickstep.SystemUiProxy; import com.android.quickstep.util.RemoteAnimationProvider; import com.android.quickstep.util.RemoteFadeOutAnimationListener; import com.android.quickstep.util.ShelfPeekAnim; import com.android.quickstep.views.RecentsView; import com.android.systemui.shared.system.ActivityManagerWrapper; import com.android.systemui.shared.system.RemoteAnimationTargetCompat; import java.util.stream.Stream; Loading Loading @@ -262,7 +264,10 @@ public abstract class BaseQuickstepLauncher extends Launcher public void useFadeOutAnimationForLauncherStart(CancellationSignal signal) { QuickstepAppTransitionManagerImpl appTransitionManager = (QuickstepAppTransitionManagerImpl) getAppTransitionManager(); appTransitionManager.setRemoteAnimationProvider((appTargets, wallpaperTargets) -> { appTransitionManager.setRemoteAnimationProvider(new RemoteAnimationProvider() { @Override public AnimatorSet createWindowAnimation(RemoteAnimationTargetCompat[] appTargets, RemoteAnimationTargetCompat[] wallpaperTargets) { // On the first call clear the reference. signal.cancel(); Loading @@ -273,6 +278,7 @@ public abstract class BaseQuickstepLauncher extends Launcher AnimatorSet anim = new AnimatorSet(); anim.play(fadeAnimation); return anim; } }, signal); } Loading
quickstep/src/com/android/launcher3/LauncherAnimationRunner.java +6 −1 Original line number Diff line number Diff line Loading @@ -34,7 +34,8 @@ import com.android.systemui.shared.system.RemoteAnimationRunnerCompat; import com.android.systemui.shared.system.RemoteAnimationTargetCompat; @TargetApi(Build.VERSION_CODES.P) public abstract class LauncherAnimationRunner implements RemoteAnimationRunnerCompat { public abstract class LauncherAnimationRunner implements RemoteAnimationRunnerCompat, WrappedAnimationRunnerImpl { private final Handler mHandler; private final boolean mStartAtFrontOfQueue; Loading @@ -49,6 +50,10 @@ public abstract class LauncherAnimationRunner implements RemoteAnimationRunnerCo mStartAtFrontOfQueue = startAtFrontOfQueue; } public Handler getHandler() { return mHandler; } // Called only in R+ platform @BinderThread public void onAnimationStart(RemoteAnimationTargetCompat[] appTargets, Loading
quickstep/src/com/android/launcher3/LauncherInitListener.java +14 −8 Original line number Diff line number Diff line Loading @@ -15,6 +15,7 @@ */ package com.android.launcher3; import android.animation.AnimatorSet; import android.annotation.TargetApi; import android.content.Context; import android.content.Intent; Loading @@ -25,6 +26,7 @@ import android.os.Handler; import com.android.launcher3.util.ActivityTracker; import com.android.quickstep.util.ActivityInitListener; import com.android.quickstep.util.RemoteAnimationProvider; import com.android.systemui.shared.system.RemoteAnimationTargetCompat; import java.util.function.BiPredicate; Loading @@ -51,7 +53,10 @@ public class LauncherInitListener extends ActivityInitListener<Launcher> { // Set a one-time animation provider. After the first call, this will get cleared. // TODO: Probably also check the intended target id. CancellationSignal cancellationSignal = new CancellationSignal(); appTransitionManager.setRemoteAnimationProvider((appTargets, wallpaperTargets) -> { appTransitionManager.setRemoteAnimationProvider(new RemoteAnimationProvider() { @Override public AnimatorSet createWindowAnimation(RemoteAnimationTargetCompat[] appTargets, RemoteAnimationTargetCompat[] wallpaperTargets) { // On the first call clear the reference. cancellationSignal.cancel(); Loading @@ -62,6 +67,7 @@ public class LauncherInitListener extends ActivityInitListener<Launcher> { return provider.createWindowAnimation(appTargets, wallpaperTargets); } return null; } }, cancellationSignal); } launcher.deferOverlayCallbacksUntilNextResumeOrStop(); Loading