From 5c74f7bb59b936d11c9562ce9b04663ea0dc6a7c Mon Sep 17 00:00:00 2001 From: Tracy Zhou Date: Tue, 17 Apr 2018 22:03:54 -0700 Subject: [PATCH] Implement swipe up and quick scrub onboarding (Pt. Launcher) SysUI change: ag/3914771 Bug: 70180942 Test: manual test Change-Id: I42ade28ebad6dcbbcee6dfb80791f22f36e78290 --- quickstep/libs/sysui_shared.jar | Bin 122460 -> 122700 bytes .../LandscapeEdgeSwipeController.java | 4 ++++ .../PortraitStatesTouchController.java | 4 ++++ .../com/android/quickstep/RecentsModel.java | 15 +++++++++++++++ .../WindowTransformSwipeHandler.java | 1 + 5 files changed, 24 insertions(+) diff --git a/quickstep/libs/sysui_shared.jar b/quickstep/libs/sysui_shared.jar index 8e2f2f1fc0f5b48660585b761f2de3b3a2a32edf..19a9b179eae5bf0c62637a77f083f48cae08da8e 100644 GIT binary patch delta 8541 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 diff --git a/quickstep/src/com/android/launcher3/uioverrides/LandscapeEdgeSwipeController.java b/quickstep/src/com/android/launcher3/uioverrides/LandscapeEdgeSwipeController.java index 3622fc4250..a7cf545314 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/LandscapeEdgeSwipeController.java +++ b/quickstep/src/com/android/launcher3/uioverrides/LandscapeEdgeSwipeController.java @@ -12,6 +12,7 @@ import com.android.launcher3.LauncherState; import com.android.launcher3.touch.AbstractStateChangeTouchController; import com.android.launcher3.touch.SwipeDetector; import com.android.launcher3.userevent.nano.LauncherLogProto.Action.Direction; +import com.android.quickstep.RecentsModel; import com.android.quickstep.util.SysuiEventLogger; /** @@ -19,6 +20,8 @@ import com.android.quickstep.util.SysuiEventLogger; */ public class LandscapeEdgeSwipeController extends AbstractStateChangeTouchController { + private static final String TAG = "LandscapeEdgeSwipeCtrl"; + public LandscapeEdgeSwipeController(Launcher l) { super(l, SwipeDetector.HORIZONTAL); } @@ -69,6 +72,7 @@ public class LandscapeEdgeSwipeController extends AbstractStateChangeTouchContro protected void onSwipeInteractionCompleted(LauncherState targetState, int logAction) { super.onSwipeInteractionCompleted(targetState, logAction); if (mFromState == NORMAL && targetState == OVERVIEW) { + RecentsModel.getInstance(mLauncher).onOverviewShown(true, TAG); SysuiEventLogger.writeDummyRecentsTransition(0); } } diff --git a/quickstep/src/com/android/launcher3/uioverrides/PortraitStatesTouchController.java b/quickstep/src/com/android/launcher3/uioverrides/PortraitStatesTouchController.java index 9f21a950f7..2e95c04e31 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/PortraitStatesTouchController.java +++ b/quickstep/src/com/android/launcher3/uioverrides/PortraitStatesTouchController.java @@ -39,6 +39,7 @@ import com.android.launcher3.touch.AbstractStateChangeTouchController; import com.android.launcher3.touch.SwipeDetector; import com.android.launcher3.userevent.nano.LauncherLogProto.Action.Touch; import com.android.launcher3.userevent.nano.LauncherLogProto.ContainerType; +import com.android.quickstep.RecentsModel; import com.android.quickstep.TouchInteractionService; import com.android.quickstep.util.SysuiEventLogger; import com.android.quickstep.views.RecentsView; @@ -49,6 +50,8 @@ import com.android.quickstep.views.TaskView; */ public class PortraitStatesTouchController extends AbstractStateChangeTouchController { + private static final String TAG = "PortraitStatesTouchCtrl"; + private static final float TOTAL_DISTANCE_MULTIPLIER = 3f; private static final float LINEAR_SCALE_LIMIT = 1 / TOTAL_DISTANCE_MULTIPLIER; @@ -284,6 +287,7 @@ public class PortraitStatesTouchController extends AbstractStateChangeTouchContr protected void onSwipeInteractionCompleted(LauncherState targetState, int logAction) { super.onSwipeInteractionCompleted(targetState, logAction); if (mFromState == NORMAL && targetState == OVERVIEW) { + RecentsModel.getInstance(mLauncher).onOverviewShown(true, TAG); SysuiEventLogger.writeDummyRecentsTransition(0); } } diff --git a/quickstep/src/com/android/quickstep/RecentsModel.java b/quickstep/src/com/android/quickstep/RecentsModel.java index 4652f2d656..70b0355b09 100644 --- a/quickstep/src/com/android/quickstep/RecentsModel.java +++ b/quickstep/src/com/android/quickstep/RecentsModel.java @@ -26,8 +26,10 @@ import android.graphics.drawable.Drawable; import android.os.Build; import android.os.Bundle; import android.os.Looper; +import android.os.RemoteException; import android.os.UserHandle; import android.support.annotation.WorkerThread; +import android.util.Log; import android.util.LruCache; import android.util.SparseArray; import android.view.accessibility.AccessibilityManager; @@ -234,6 +236,19 @@ public class RecentsModel extends TaskStackChangeListener { mRecentsTaskLoader.onTrimMemory(level); } + public void onOverviewShown(boolean fromHome, String tag) { + if (mSystemUiProxy == null) { + return; + } + try { + mSystemUiProxy.onOverviewShown(fromHome); + } catch (RemoteException e) { + Log.w(tag, + "Failed to notify SysUI of overview shown from " + (fromHome ? "home" : "app") + + ": ", e); + } + } + @WorkerThread public void preloadAssistData(int taskId, Bundle data) { mMainThreadExecutor.execute(() -> { diff --git a/quickstep/src/com/android/quickstep/WindowTransformSwipeHandler.java b/quickstep/src/com/android/quickstep/WindowTransformSwipeHandler.java index 99e9451534..1d06752ca3 100644 --- a/quickstep/src/com/android/quickstep/WindowTransformSwipeHandler.java +++ b/quickstep/src/com/android/quickstep/WindowTransformSwipeHandler.java @@ -698,6 +698,7 @@ public class WindowTransformSwipeHandler { // If we haven't posted the transition end runnable, run it now finishTransitionRunnable.run(); } + RecentsModel.getInstance(mContext).onOverviewShown(false, TAG); doLogGesture(true /* toLauncher */); }