diff options
-rw-r--r-- | quickstep/src/com/android/quickstep/OverviewCommandHelper.java | 56 |
1 files changed, 33 insertions, 23 deletions
diff --git a/quickstep/src/com/android/quickstep/OverviewCommandHelper.java b/quickstep/src/com/android/quickstep/OverviewCommandHelper.java index efca9ebb1..ef58fad29 100644 --- a/quickstep/src/com/android/quickstep/OverviewCommandHelper.java +++ b/quickstep/src/com/android/quickstep/OverviewCommandHelper.java @@ -73,35 +73,45 @@ public class OverviewCommandHelper extends InternalStateHandler { } public void onOverviewToggle() { - if (DEBUG_START_FALLBACK_ACTIVITY) { - mContext.startActivity(new Intent(mContext, RecentsActivity.class) - .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK)); - return; - } - - long elapsedTime = SystemClock.elapsedRealtime() - mLastToggleTime; - mLastToggleTime = SystemClock.elapsedRealtime(); - - if (isOverviewAlmostVisible()) { - boolean isQuickTap = elapsedTime < ViewConfiguration.getDoubleTapTimeout(); - startNonLauncherTask(isQuickTap ? 2 : 1); - } else { - openRecents(); - } + getLauncher().runOnUiThread(() -> { + if (DEBUG_START_FALLBACK_ACTIVITY) { + mContext.startActivity(new Intent(mContext, RecentsActivity.class) + .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent + .FLAG_ACTIVITY_CLEAR_TASK)); + return; + } + + long elapsedTime = SystemClock.elapsedRealtime() - mLastToggleTime; + mLastToggleTime = SystemClock.elapsedRealtime(); + + if (isOverviewAlmostVisible()) { + boolean isQuickTap = elapsedTime < ViewConfiguration.getDoubleTapTimeout(); + startNonLauncherTask(isQuickTap ? 2 : 1); + } else { + openRecents(); + } + } + ); } public void onOverviewShown() { - if (isOverviewAlmostVisible()) { - final RecentsView rv = getLauncher().getOverviewPanel(); - rv.snapToTaskAfterNext(); - } else { - openRecents(); - } + getLauncher().runOnUiThread(() -> { + if (isOverviewAlmostVisible()) { + final RecentsView rv = getLauncher().getOverviewPanel(); + rv.snapToTaskAfterNext(); + } else { + openRecents(); + } + } + ); } public void onOverviewHidden() { - final RecentsView rv = getLauncher().getOverviewPanel(); - rv.launchNextTask(); + getLauncher().runOnUiThread(() -> { + final RecentsView rv = getLauncher().getOverviewPanel(); + rv.launchNextTask(); + } + ); } private void startNonLauncherTask(int backStackCount) { |