Loading quickstep/src/com/android/launcher3/taskbar/LauncherTaskbarUIController.java +2 −1 Original line number Diff line number Diff line Loading @@ -63,6 +63,7 @@ import com.android.quickstep.views.RecentsView; import com.android.systemui.shared.recents.model.ThumbnailData; import java.util.Arrays; import java.util.HashMap; import java.util.Set; import java.util.function.Supplier; import java.util.stream.Stream; Loading Loading @@ -459,7 +460,7 @@ public class LauncherTaskbarUIController extends TaskbarUIController { } @Override public void onRecentsAnimationCanceled(ThumbnailData thumbnailData) { public void onRecentsAnimationCanceled(HashMap<Integer, ThumbnailData> thumbnailDatas) { endGestureStateOverride(true); } Loading quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java +6 −4 Original line number Diff line number Diff line Loading @@ -121,6 +121,7 @@ import com.android.systemui.shared.system.TaskStackChangeListener; import com.android.systemui.shared.system.TaskStackChangeListeners; import java.util.ArrayList; import java.util.HashMap; import java.util.function.Consumer; /** Loading Loading @@ -399,9 +400,10 @@ public abstract class AbsSwipeUpHandler<T extends StatefulActivity<S>, // Set up a entire animation lifecycle callback to notify the current recents view when // the animation is canceled mGestureState.runOnceAtState(STATE_RECENTS_ANIMATION_CANCELED, () -> { ThumbnailData snapshot = mGestureState.consumeRecentsAnimationCanceledSnapshot(); if (snapshot != null) { mRecentsView.switchToScreenshot(snapshot, () -> { HashMap<Integer, ThumbnailData> snapshots = mGestureState.consumeRecentsAnimationCanceledSnapshot(); if (snapshots != null) { mRecentsView.switchToScreenshot(snapshots, () -> { if (mRecentsAnimationController != null) { mRecentsAnimationController.cleanupScreenshot(); } Loading Loading @@ -809,7 +811,7 @@ public abstract class AbsSwipeUpHandler<T extends StatefulActivity<S>, } @Override public void onRecentsAnimationCanceled(ThumbnailData thumbnailData) { public void onRecentsAnimationCanceled(HashMap<Integer, ThumbnailData> thumbnailDatas) { ActiveGestureLog.INSTANCE.addLog("cancelRecentsAnimation"); mActivityInitListener.unregister(); mStateCallback.setStateOnUiThread(STATE_GESTURE_CANCELLED | STATE_HANDLER_INVALIDATED); Loading quickstep/src/com/android/quickstep/BaseActivityInterface.java +4 −2 Original line number Diff line number Diff line Loading @@ -66,6 +66,7 @@ import com.android.quickstep.views.TaskView; import com.android.systemui.shared.recents.model.ThumbnailData; import com.android.systemui.shared.system.RemoteAnimationTargetCompat; import java.util.HashMap; import java.util.function.Consumer; import java.util.function.Predicate; Loading Loading @@ -192,7 +193,8 @@ public abstract class BaseActivityInterface<STATE_TYPE extends BaseState<STATE_T public void closeOverlay() { } public void switchRunningTaskViewToScreenshot(ThumbnailData thumbnailData, Runnable runnable) { public void switchRunningTaskViewToScreenshot(HashMap<Integer, ThumbnailData> thumbnailDatas, Runnable runnable) { ACTIVITY_TYPE activity = getCreatedActivity(); if (activity == null) { return; Loading @@ -204,7 +206,7 @@ public abstract class BaseActivityInterface<STATE_TYPE extends BaseState<STATE_T } return; } recentsView.switchToScreenshot(thumbnailData, runnable); recentsView.switchToScreenshot(thumbnailDatas, runnable); } /** Loading quickstep/src/com/android/quickstep/GestureState.java +10 −8 Original line number Diff line number Diff line Loading @@ -35,6 +35,7 @@ import com.android.systemui.shared.system.RemoteAnimationTargetCompat; import java.io.PrintWriter; import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; import java.util.Set; Loading Loading @@ -139,7 +140,7 @@ public class GestureState implements RecentsAnimationCallbacks.RecentsAnimationL private Set<Integer> mPreviouslyAppearedTaskIds = new HashSet<>(); private int mLastStartedTaskId = -1; private RecentsAnimationController mRecentsAnimationController; private ThumbnailData mRecentsAnimationCanceledSnapshot; private HashMap<Integer, ThumbnailData> mRecentsAnimationCanceledSnapshots; /** The time when the swipe up gesture is triggered. */ private long mSwipeUpStartTimeMs; Loading Loading @@ -354,16 +355,16 @@ public class GestureState implements RecentsAnimationCallbacks.RecentsAnimationL } @Override public void onRecentsAnimationCanceled(ThumbnailData thumbnailData) { mRecentsAnimationCanceledSnapshot = thumbnailData; public void onRecentsAnimationCanceled(HashMap<Integer, ThumbnailData> thumbnailDatas) { mRecentsAnimationCanceledSnapshots = thumbnailDatas; mStateCallback.setState(STATE_RECENTS_ANIMATION_CANCELED); mStateCallback.setState(STATE_RECENTS_ANIMATION_ENDED); if (mRecentsAnimationCanceledSnapshot != null) { if (mRecentsAnimationCanceledSnapshots != null) { // Clean up the screenshot to finalize the recents animation cancel if (mRecentsAnimationController != null) { mRecentsAnimationController.cleanupScreenshot(); } mRecentsAnimationCanceledSnapshot = null; mRecentsAnimationCanceledSnapshots = null; } } Loading @@ -378,9 +379,10 @@ public class GestureState implements RecentsAnimationCallbacks.RecentsAnimationL * while STATE_RECENTS_ANIMATION_CANCELED state is being set, and the caller is responsible for * calling {@link RecentsAnimationController#cleanupScreenshot()}. */ ThumbnailData consumeRecentsAnimationCanceledSnapshot() { ThumbnailData data = mRecentsAnimationCanceledSnapshot; mRecentsAnimationCanceledSnapshot = null; HashMap<Integer, ThumbnailData> consumeRecentsAnimationCanceledSnapshot() { HashMap<Integer, ThumbnailData> data = new HashMap<Integer, ThumbnailData>(mRecentsAnimationCanceledSnapshots); mRecentsAnimationCanceledSnapshots = null; return data; } Loading quickstep/src/com/android/quickstep/OverviewCommandHelper.java +2 −1 Original line number Diff line number Diff line Loading @@ -39,6 +39,7 @@ import com.android.systemui.shared.recents.model.ThumbnailData; import com.android.systemui.shared.system.InteractionJankMonitorWrapper; import java.util.ArrayList; import java.util.HashMap; /** * Helper class to handle various atomic commands for switching between Overview. Loading Loading @@ -211,7 +212,7 @@ public class OverviewCommandHelper { } @Override public void onRecentsAnimationCanceled(ThumbnailData thumbnailData) { public void onRecentsAnimationCanceled(HashMap<Integer, ThumbnailData> thumbnailDatas) { interactionHandler.onGestureCancelled(); cmd.removeListener(this); Loading Loading
quickstep/src/com/android/launcher3/taskbar/LauncherTaskbarUIController.java +2 −1 Original line number Diff line number Diff line Loading @@ -63,6 +63,7 @@ import com.android.quickstep.views.RecentsView; import com.android.systemui.shared.recents.model.ThumbnailData; import java.util.Arrays; import java.util.HashMap; import java.util.Set; import java.util.function.Supplier; import java.util.stream.Stream; Loading Loading @@ -459,7 +460,7 @@ public class LauncherTaskbarUIController extends TaskbarUIController { } @Override public void onRecentsAnimationCanceled(ThumbnailData thumbnailData) { public void onRecentsAnimationCanceled(HashMap<Integer, ThumbnailData> thumbnailDatas) { endGestureStateOverride(true); } Loading
quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java +6 −4 Original line number Diff line number Diff line Loading @@ -121,6 +121,7 @@ import com.android.systemui.shared.system.TaskStackChangeListener; import com.android.systemui.shared.system.TaskStackChangeListeners; import java.util.ArrayList; import java.util.HashMap; import java.util.function.Consumer; /** Loading Loading @@ -399,9 +400,10 @@ public abstract class AbsSwipeUpHandler<T extends StatefulActivity<S>, // Set up a entire animation lifecycle callback to notify the current recents view when // the animation is canceled mGestureState.runOnceAtState(STATE_RECENTS_ANIMATION_CANCELED, () -> { ThumbnailData snapshot = mGestureState.consumeRecentsAnimationCanceledSnapshot(); if (snapshot != null) { mRecentsView.switchToScreenshot(snapshot, () -> { HashMap<Integer, ThumbnailData> snapshots = mGestureState.consumeRecentsAnimationCanceledSnapshot(); if (snapshots != null) { mRecentsView.switchToScreenshot(snapshots, () -> { if (mRecentsAnimationController != null) { mRecentsAnimationController.cleanupScreenshot(); } Loading Loading @@ -809,7 +811,7 @@ public abstract class AbsSwipeUpHandler<T extends StatefulActivity<S>, } @Override public void onRecentsAnimationCanceled(ThumbnailData thumbnailData) { public void onRecentsAnimationCanceled(HashMap<Integer, ThumbnailData> thumbnailDatas) { ActiveGestureLog.INSTANCE.addLog("cancelRecentsAnimation"); mActivityInitListener.unregister(); mStateCallback.setStateOnUiThread(STATE_GESTURE_CANCELLED | STATE_HANDLER_INVALIDATED); Loading
quickstep/src/com/android/quickstep/BaseActivityInterface.java +4 −2 Original line number Diff line number Diff line Loading @@ -66,6 +66,7 @@ import com.android.quickstep.views.TaskView; import com.android.systemui.shared.recents.model.ThumbnailData; import com.android.systemui.shared.system.RemoteAnimationTargetCompat; import java.util.HashMap; import java.util.function.Consumer; import java.util.function.Predicate; Loading Loading @@ -192,7 +193,8 @@ public abstract class BaseActivityInterface<STATE_TYPE extends BaseState<STATE_T public void closeOverlay() { } public void switchRunningTaskViewToScreenshot(ThumbnailData thumbnailData, Runnable runnable) { public void switchRunningTaskViewToScreenshot(HashMap<Integer, ThumbnailData> thumbnailDatas, Runnable runnable) { ACTIVITY_TYPE activity = getCreatedActivity(); if (activity == null) { return; Loading @@ -204,7 +206,7 @@ public abstract class BaseActivityInterface<STATE_TYPE extends BaseState<STATE_T } return; } recentsView.switchToScreenshot(thumbnailData, runnable); recentsView.switchToScreenshot(thumbnailDatas, runnable); } /** Loading
quickstep/src/com/android/quickstep/GestureState.java +10 −8 Original line number Diff line number Diff line Loading @@ -35,6 +35,7 @@ import com.android.systemui.shared.system.RemoteAnimationTargetCompat; import java.io.PrintWriter; import java.util.ArrayList; import java.util.HashMap; import java.util.HashSet; import java.util.Set; Loading Loading @@ -139,7 +140,7 @@ public class GestureState implements RecentsAnimationCallbacks.RecentsAnimationL private Set<Integer> mPreviouslyAppearedTaskIds = new HashSet<>(); private int mLastStartedTaskId = -1; private RecentsAnimationController mRecentsAnimationController; private ThumbnailData mRecentsAnimationCanceledSnapshot; private HashMap<Integer, ThumbnailData> mRecentsAnimationCanceledSnapshots; /** The time when the swipe up gesture is triggered. */ private long mSwipeUpStartTimeMs; Loading Loading @@ -354,16 +355,16 @@ public class GestureState implements RecentsAnimationCallbacks.RecentsAnimationL } @Override public void onRecentsAnimationCanceled(ThumbnailData thumbnailData) { mRecentsAnimationCanceledSnapshot = thumbnailData; public void onRecentsAnimationCanceled(HashMap<Integer, ThumbnailData> thumbnailDatas) { mRecentsAnimationCanceledSnapshots = thumbnailDatas; mStateCallback.setState(STATE_RECENTS_ANIMATION_CANCELED); mStateCallback.setState(STATE_RECENTS_ANIMATION_ENDED); if (mRecentsAnimationCanceledSnapshot != null) { if (mRecentsAnimationCanceledSnapshots != null) { // Clean up the screenshot to finalize the recents animation cancel if (mRecentsAnimationController != null) { mRecentsAnimationController.cleanupScreenshot(); } mRecentsAnimationCanceledSnapshot = null; mRecentsAnimationCanceledSnapshots = null; } } Loading @@ -378,9 +379,10 @@ public class GestureState implements RecentsAnimationCallbacks.RecentsAnimationL * while STATE_RECENTS_ANIMATION_CANCELED state is being set, and the caller is responsible for * calling {@link RecentsAnimationController#cleanupScreenshot()}. */ ThumbnailData consumeRecentsAnimationCanceledSnapshot() { ThumbnailData data = mRecentsAnimationCanceledSnapshot; mRecentsAnimationCanceledSnapshot = null; HashMap<Integer, ThumbnailData> consumeRecentsAnimationCanceledSnapshot() { HashMap<Integer, ThumbnailData> data = new HashMap<Integer, ThumbnailData>(mRecentsAnimationCanceledSnapshots); mRecentsAnimationCanceledSnapshots = null; return data; } Loading
quickstep/src/com/android/quickstep/OverviewCommandHelper.java +2 −1 Original line number Diff line number Diff line Loading @@ -39,6 +39,7 @@ import com.android.systemui.shared.recents.model.ThumbnailData; import com.android.systemui.shared.system.InteractionJankMonitorWrapper; import java.util.ArrayList; import java.util.HashMap; /** * Helper class to handle various atomic commands for switching between Overview. Loading Loading @@ -211,7 +212,7 @@ public class OverviewCommandHelper { } @Override public void onRecentsAnimationCanceled(ThumbnailData thumbnailData) { public void onRecentsAnimationCanceled(HashMap<Integer, ThumbnailData> thumbnailDatas) { interactionHandler.onGestureCancelled(); cmd.removeListener(this); Loading