Loading quickstep/recents_ui_overrides/src/com/android/quickstep/TouchInteractionService.java +10 −16 Original line number Diff line number Diff line Loading @@ -471,7 +471,6 @@ public class TouchInteractionService extends Service implements PluginListener<O Log.d(TestProtocol.NO_SWIPE_TO_HOME, "TouchInteractionService.onInputEvent:DOWN"); } mDeviceState.setOrientationTransformIfNeeded(event); GestureState newGestureState; if (mDeviceState.isInSwipeUpTouchRegion(event)) { if (TestProtocol.sDebugTracing) { Loading @@ -481,35 +480,30 @@ public class TouchInteractionService extends Service implements PluginListener<O // Clone the previous gesture state since onConsumerAboutToBeSwitched might trigger // onConsumerInactive and wipe the previous gesture state GestureState prevGestureState = new GestureState(mGestureState); newGestureState = createGestureState(); mGestureState = createGestureState(mGestureState); mConsumer.onConsumerAboutToBeSwitched(); mConsumer = newConsumer(prevGestureState, newGestureState, event); mConsumer = newConsumer(prevGestureState, mGestureState, event); ActiveGestureLog.INSTANCE.addLog("setInputConsumer: " + mConsumer.getName()); mUncheckedConsumer = mConsumer; } else if (mDeviceState.isUserUnlocked() && mDeviceState.isFullyGesturalNavMode()) { newGestureState = createGestureState(); ActivityManager.RunningTaskInfo runningTask = newGestureState.getRunningTask(); mGestureState = createGestureState(mGestureState); ActivityManager.RunningTaskInfo runningTask = mGestureState.getRunningTask(); if (mDeviceState.canTriggerAssistantAction(event, runningTask)) { // Do not change mConsumer as if there is an ongoing QuickSwitch gesture, we // should not interrupt it. QuickSwitch assumes that interruption can only // happen if the next gesture is also quick switch. mUncheckedConsumer = new AssistantInputConsumer( this, newGestureState, mGestureState, InputConsumer.NO_OP, mInputMonitorCompat, mOverviewComponentObserver.assistantGestureIsConstrained()); } else { newGestureState = DEFAULT_STATE; mUncheckedConsumer = InputConsumer.NO_OP; } } else { newGestureState = DEFAULT_STATE; mUncheckedConsumer = InputConsumer.NO_OP; } // Save the current gesture state mGestureState = newGestureState; } else { // Other events if (mUncheckedConsumer != InputConsumer.NO_OP) { Loading Loading @@ -543,14 +537,14 @@ public class TouchInteractionService extends Service implements PluginListener<O TraceHelper.INSTANCE.endFlagsOverride(traceToken); } private GestureState createGestureState() { private GestureState createGestureState(GestureState previousGestureState) { GestureState gestureState = new GestureState(mOverviewComponentObserver, ActiveGestureLog.INSTANCE.generateAndSetLogId()); if (mTaskAnimationManager.isRecentsAnimationRunning()) { gestureState.updateRunningTask(mGestureState.getRunningTask()); gestureState.updateLastStartedTaskId(mGestureState.getLastStartedTaskId()); gestureState.updateRunningTask(previousGestureState.getRunningTask()); gestureState.updateLastStartedTaskId(previousGestureState.getLastStartedTaskId()); gestureState.updatePreviouslyAppearedTaskIds( mGestureState.getPreviouslyAppearedTaskIds()); previousGestureState.getPreviouslyAppearedTaskIds()); } else { gestureState.updateRunningTask(TraceHelper.whitelistIpcs("getRunningTask.0", () -> mAM.getRunningTask(false /* filterOnlyVisibleRecents */))); Loading Loading @@ -753,7 +747,7 @@ public class TouchInteractionService extends Service implements PluginListener<O private void reset() { mConsumer = mUncheckedConsumer = mResetGestureInputConsumer; mGestureState = new GestureState(); mGestureState = DEFAULT_STATE; } private void preloadOverview(boolean fromInit) { Loading Loading
quickstep/recents_ui_overrides/src/com/android/quickstep/TouchInteractionService.java +10 −16 Original line number Diff line number Diff line Loading @@ -471,7 +471,6 @@ public class TouchInteractionService extends Service implements PluginListener<O Log.d(TestProtocol.NO_SWIPE_TO_HOME, "TouchInteractionService.onInputEvent:DOWN"); } mDeviceState.setOrientationTransformIfNeeded(event); GestureState newGestureState; if (mDeviceState.isInSwipeUpTouchRegion(event)) { if (TestProtocol.sDebugTracing) { Loading @@ -481,35 +480,30 @@ public class TouchInteractionService extends Service implements PluginListener<O // Clone the previous gesture state since onConsumerAboutToBeSwitched might trigger // onConsumerInactive and wipe the previous gesture state GestureState prevGestureState = new GestureState(mGestureState); newGestureState = createGestureState(); mGestureState = createGestureState(mGestureState); mConsumer.onConsumerAboutToBeSwitched(); mConsumer = newConsumer(prevGestureState, newGestureState, event); mConsumer = newConsumer(prevGestureState, mGestureState, event); ActiveGestureLog.INSTANCE.addLog("setInputConsumer: " + mConsumer.getName()); mUncheckedConsumer = mConsumer; } else if (mDeviceState.isUserUnlocked() && mDeviceState.isFullyGesturalNavMode()) { newGestureState = createGestureState(); ActivityManager.RunningTaskInfo runningTask = newGestureState.getRunningTask(); mGestureState = createGestureState(mGestureState); ActivityManager.RunningTaskInfo runningTask = mGestureState.getRunningTask(); if (mDeviceState.canTriggerAssistantAction(event, runningTask)) { // Do not change mConsumer as if there is an ongoing QuickSwitch gesture, we // should not interrupt it. QuickSwitch assumes that interruption can only // happen if the next gesture is also quick switch. mUncheckedConsumer = new AssistantInputConsumer( this, newGestureState, mGestureState, InputConsumer.NO_OP, mInputMonitorCompat, mOverviewComponentObserver.assistantGestureIsConstrained()); } else { newGestureState = DEFAULT_STATE; mUncheckedConsumer = InputConsumer.NO_OP; } } else { newGestureState = DEFAULT_STATE; mUncheckedConsumer = InputConsumer.NO_OP; } // Save the current gesture state mGestureState = newGestureState; } else { // Other events if (mUncheckedConsumer != InputConsumer.NO_OP) { Loading Loading @@ -543,14 +537,14 @@ public class TouchInteractionService extends Service implements PluginListener<O TraceHelper.INSTANCE.endFlagsOverride(traceToken); } private GestureState createGestureState() { private GestureState createGestureState(GestureState previousGestureState) { GestureState gestureState = new GestureState(mOverviewComponentObserver, ActiveGestureLog.INSTANCE.generateAndSetLogId()); if (mTaskAnimationManager.isRecentsAnimationRunning()) { gestureState.updateRunningTask(mGestureState.getRunningTask()); gestureState.updateLastStartedTaskId(mGestureState.getLastStartedTaskId()); gestureState.updateRunningTask(previousGestureState.getRunningTask()); gestureState.updateLastStartedTaskId(previousGestureState.getLastStartedTaskId()); gestureState.updatePreviouslyAppearedTaskIds( mGestureState.getPreviouslyAppearedTaskIds()); previousGestureState.getPreviouslyAppearedTaskIds()); } else { gestureState.updateRunningTask(TraceHelper.whitelistIpcs("getRunningTask.0", () -> mAM.getRunningTask(false /* filterOnlyVisibleRecents */))); Loading Loading @@ -753,7 +747,7 @@ public class TouchInteractionService extends Service implements PluginListener<O private void reset() { mConsumer = mUncheckedConsumer = mResetGestureInputConsumer; mGestureState = new GestureState(); mGestureState = DEFAULT_STATE; } private void preloadOverview(boolean fromInit) { Loading