diff --git a/quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java b/quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java index b7a50fc35e..81a5c1cb9d 100644 --- a/quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java +++ b/quickstep/src/com/android/quickstep/AbsSwipeUpHandler.java @@ -340,6 +340,8 @@ public abstract class AbsSwipeUpHandler, return ActiveGestureErrorDetector.GestureEvent.STATE_CAPTURE_SCREENSHOT; } else if (stateFlag == STATE_HANDLER_INVALIDATED) { return ActiveGestureErrorDetector.GestureEvent.STATE_HANDLER_INVALIDATED; + } else if (stateFlag == STATE_LAUNCHER_DRAWN) { + return ActiveGestureErrorDetector.GestureEvent.STATE_LAUNCHER_DRAWN; } return null; } diff --git a/quickstep/src/com/android/quickstep/MultiStateCallback.java b/quickstep/src/com/android/quickstep/MultiStateCallback.java index 56e7fb5ea4..a68bea2cc0 100644 --- a/quickstep/src/com/android/quickstep/MultiStateCallback.java +++ b/quickstep/src/com/android/quickstep/MultiStateCallback.java @@ -116,7 +116,13 @@ public class MultiStateCallback { if (gestureEvent == null) { continue; } - ActiveGestureLog.INSTANCE.trackEvent(gestureEvent); + if (gestureEvent.mLogEvent && gestureEvent.mTrackEvent) { + ActiveGestureLog.INSTANCE.addLog(gestureEvent.name(), gestureEvent); + } else if (gestureEvent.mLogEvent) { + ActiveGestureLog.INSTANCE.addLog(gestureEvent.name()); + } else if (gestureEvent.mTrackEvent) { + ActiveGestureLog.INSTANCE.trackEvent(gestureEvent); + } } } diff --git a/quickstep/src/com/android/quickstep/util/ActiveGestureErrorDetector.java b/quickstep/src/com/android/quickstep/util/ActiveGestureErrorDetector.java index 54f632afdb..693ef100b6 100644 --- a/quickstep/src/com/android/quickstep/util/ActiveGestureErrorDetector.java +++ b/quickstep/src/com/android/quickstep/util/ActiveGestureErrorDetector.java @@ -46,7 +46,19 @@ public class ActiveGestureErrorDetector { STATE_GESTURE_STARTED, STATE_GESTURE_COMPLETED, STATE_GESTURE_CANCELLED, STATE_END_TARGET_ANIMATION_FINISHED, STATE_RECENTS_SCROLLING_FINISHED, STATE_CAPTURE_SCREENSHOT, STATE_SCREENSHOT_CAPTURED, STATE_HANDLER_INVALIDATED, - STATE_RECENTS_ANIMATION_CANCELED + STATE_RECENTS_ANIMATION_CANCELED, STATE_LAUNCHER_DRAWN(true, false); + + public final boolean mLogEvent; + public final boolean mTrackEvent; + + GestureEvent() { + this(false, true); + } + + GestureEvent(boolean logEvent, boolean trackEvent) { + mLogEvent = logEvent; + mTrackEvent = trackEvent; + } } private ActiveGestureErrorDetector() {} @@ -168,6 +180,7 @@ public class ActiveGestureErrorDetector { case STATE_END_TARGET_ANIMATION_FINISHED: case STATE_CAPTURE_SCREENSHOT: case STATE_HANDLER_INVALIDATED: + case STATE_LAUNCHER_DRAWN: default: // No-Op }