Merge "Revert "Enable FLAG_SLIPPERY window flag when swipe down on workspace"" into ub-launcher3-qt-dev
diff --git a/go/quickstep/src/com/android/launcher3/uioverrides/RecentsUiFactory.java b/go/quickstep/src/com/android/launcher3/uioverrides/RecentsUiFactory.java
index 4582243..cbc77d2 100644
--- a/go/quickstep/src/com/android/launcher3/uioverrides/RecentsUiFactory.java
+++ b/go/quickstep/src/com/android/launcher3/uioverrides/RecentsUiFactory.java
@@ -89,4 +89,6 @@
public static RotationMode getRotationMode(DeviceProfile dp) {
return RotationMode.NORMAL;
}
+
+ public static void clearSwipeSharedState(boolean finishAnimation) {}
}
diff --git a/go/quickstep/src/com/android/quickstep/FallbackActivityControllerHelper.java b/go/quickstep/src/com/android/quickstep/FallbackActivityControllerHelper.java
index eb0c5b9..057b48b 100644
--- a/go/quickstep/src/com/android/quickstep/FallbackActivityControllerHelper.java
+++ b/go/quickstep/src/com/android/quickstep/FallbackActivityControllerHelper.java
@@ -113,4 +113,7 @@
public int getContainerType() {
return LauncherLogProto.ContainerType.SIDELOADED_LAUNCHER;
}
+
+ @Override
+ public void onLaunchTaskSuccess(RecentsActivity activity) { }
}
diff --git a/go/quickstep/src/com/android/quickstep/LauncherActivityControllerHelper.java b/go/quickstep/src/com/android/quickstep/LauncherActivityControllerHelper.java
index d595007..b0d9cda 100644
--- a/go/quickstep/src/com/android/quickstep/LauncherActivityControllerHelper.java
+++ b/go/quickstep/src/com/android/quickstep/LauncherActivityControllerHelper.java
@@ -104,4 +104,9 @@
return launcher != null ? launcher.getStateManager().getState().containerType
: LauncherLogProto.ContainerType.APP;
}
+
+ @Override
+ public void onLaunchTaskSuccess(Launcher launcher) {
+ launcher.getStateManager().moveToRestState();
+ }
}
diff --git a/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/RecentsUiFactory.java b/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/RecentsUiFactory.java
index 8d5ac50..6ecf1c1 100644
--- a/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/RecentsUiFactory.java
+++ b/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/RecentsUiFactory.java
@@ -46,6 +46,7 @@
import com.android.launcher3.util.UiThreadHelper.AsyncCommand;
import com.android.quickstep.SysUINavigationMode;
import com.android.quickstep.SysUINavigationMode.Mode;
+import com.android.quickstep.TouchInteractionService;
import com.android.quickstep.views.RecentsView;
import com.android.systemui.shared.system.WindowManagerWrapper;
@@ -184,6 +185,13 @@
}
/**
+ * Clears the swipe shared state for the current swipe gesture.
+ */
+ public static void clearSwipeSharedState(boolean finishAnimation) {
+ TouchInteractionService.getSwipeSharedState().clearAllState(finishAnimation);
+ }
+
+ /**
* Recents logic that triggers when launcher state changes or launcher activity stops/resumes.
*
* @param launcher the launcher activity
diff --git a/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/states/BackgroundAppState.java b/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/states/BackgroundAppState.java
index d14de70..5ee08c1 100644
--- a/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/states/BackgroundAppState.java
+++ b/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/states/BackgroundAppState.java
@@ -81,7 +81,8 @@
@Override
public int getVisibleElements(Launcher launcher) {
- return super.getVisibleElements(launcher) & ~RECENTS_CLEAR_ALL_BUTTON;
+ return super.getVisibleElements(launcher)
+ & ~RECENTS_CLEAR_ALL_BUTTON & ~VERTICAL_SWIPE_INDICATOR;
}
@Override
diff --git a/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/states/QuickSwitchState.java b/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/states/QuickSwitchState.java
index cdc271f..6c9f46f 100644
--- a/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/states/QuickSwitchState.java
+++ b/quickstep/recents_ui_overrides/src/com/android/launcher3/uioverrides/states/QuickSwitchState.java
@@ -57,6 +57,8 @@
if (!success) {
launcher.getStateManager().goToState(OVERVIEW);
tasktolaunch.notifyTaskLaunchFailed(TAG);
+ } else {
+ launcher.getStateManager().moveToRestState();
}
}, new Handler(Looper.getMainLooper()));
} else {
diff --git a/quickstep/recents_ui_overrides/src/com/android/quickstep/FallbackActivityControllerHelper.java b/quickstep/recents_ui_overrides/src/com/android/quickstep/FallbackActivityControllerHelper.java
index 4ae6d87..c43155b 100644
--- a/quickstep/recents_ui_overrides/src/com/android/quickstep/FallbackActivityControllerHelper.java
+++ b/quickstep/recents_ui_overrides/src/com/android/quickstep/FallbackActivityControllerHelper.java
@@ -230,4 +230,9 @@
// TODO: probably go back to overview instead.
activity.<RecentsView>getOverviewPanel().startHome();
}
+
+ @Override
+ public void onLaunchTaskSuccess(RecentsActivity activity) {
+ activity.onTaskLaunched();
+ }
}
diff --git a/quickstep/recents_ui_overrides/src/com/android/quickstep/LauncherActivityControllerHelper.java b/quickstep/recents_ui_overrides/src/com/android/quickstep/LauncherActivityControllerHelper.java
index 07c0496..b2a71a4 100644
--- a/quickstep/recents_ui_overrides/src/com/android/quickstep/LauncherActivityControllerHelper.java
+++ b/quickstep/recents_ui_overrides/src/com/android/quickstep/LauncherActivityControllerHelper.java
@@ -488,4 +488,9 @@
public void onLaunchTaskFailed(Launcher launcher) {
launcher.getStateManager().goToState(OVERVIEW);
}
+
+ @Override
+ public void onLaunchTaskSuccess(Launcher launcher) {
+ launcher.getStateManager().moveToRestState();
+ }
}
\ No newline at end of file
diff --git a/quickstep/recents_ui_overrides/src/com/android/quickstep/RecentsActivity.java b/quickstep/recents_ui_overrides/src/com/android/quickstep/RecentsActivity.java
index 32a9261..fc29a56 100644
--- a/quickstep/recents_ui_overrides/src/com/android/quickstep/RecentsActivity.java
+++ b/quickstep/recents_ui_overrides/src/com/android/quickstep/RecentsActivity.java
@@ -177,4 +177,8 @@
super.onStart();
mFallbackRecentsView.resetTaskVisuals();
}
+
+ public void onTaskLaunched() {
+ mFallbackRecentsView.resetTaskVisuals();
+ }
}
diff --git a/quickstep/recents_ui_overrides/src/com/android/quickstep/SwipeSharedState.java b/quickstep/recents_ui_overrides/src/com/android/quickstep/SwipeSharedState.java
index 6689ce3..c55f656 100644
--- a/quickstep/recents_ui_overrides/src/com/android/quickstep/SwipeSharedState.java
+++ b/quickstep/recents_ui_overrides/src/com/android/quickstep/SwipeSharedState.java
@@ -72,13 +72,15 @@
mLastAnimationRunning = false;
}
- private void clearListenerState() {
+ private void clearListenerState(boolean finishAnimation) {
if (mRecentsAnimationListener != null) {
mRecentsAnimationListener.removeListener(this);
mRecentsAnimationListener.cancelListener();
if (mLastAnimationRunning && mLastAnimationTarget != null) {
Utilities.postAsyncCallback(MAIN_THREAD_EXECUTOR.getHandler(),
- mLastAnimationTarget::cancelAnimation);
+ finishAnimation
+ ? mLastAnimationTarget::finishAnimation
+ : mLastAnimationTarget::cancelAnimation);
mLastAnimationTarget = null;
}
}
@@ -106,7 +108,7 @@
}
}
- clearListenerState();
+ clearListenerState(false /* finishAnimation */);
boolean shouldMinimiseSplitScreen = mOverviewComponentObserver == null ? false
: mOverviewComponentObserver.getActivityControlHelper().shouldMinimizeSplitScreen();
mRecentsAnimationListener = new RecentsAnimationListenerSet(
@@ -138,8 +140,8 @@
mLastAnimationTarget = mLastAnimationTarget.cloneWithoutTargets();
}
- public void clearAllState() {
- clearListenerState();
+ public void clearAllState(boolean finishAnimation) {
+ clearListenerState(finishAnimation);
canGestureBeContinued = false;
recentsAnimationFinishInterrupted = false;
nextRunningTaskId = -1;
diff --git a/quickstep/recents_ui_overrides/src/com/android/quickstep/TouchInteractionService.java b/quickstep/recents_ui_overrides/src/com/android/quickstep/TouchInteractionService.java
index 8f08f0d..53da0f9 100644
--- a/quickstep/recents_ui_overrides/src/com/android/quickstep/TouchInteractionService.java
+++ b/quickstep/recents_ui_overrides/src/com/android/quickstep/TouchInteractionService.java
@@ -225,14 +225,18 @@
};
private static boolean sConnected = false;
+ private static final SwipeSharedState sSwipeSharedState = new SwipeSharedState();
public static boolean isConnected() {
return sConnected;
}
- private final SwipeSharedState mSwipeSharedState = new SwipeSharedState();
+ public static SwipeSharedState getSwipeSharedState() {
+ return sSwipeSharedState;
+ }
+
private final InputConsumer mResetGestureInputConsumer =
- new ResetGestureInputConsumer(mSwipeSharedState);
+ new ResetGestureInputConsumer(sSwipeSharedState);
private ActivityManagerWrapper mAM;
private RecentsModel mRecentsModel;
@@ -436,7 +440,7 @@
mInputConsumer = InputConsumerController.getRecentsAnimationInputConsumer();
mIsUserUnlocked = true;
- mSwipeSharedState.setOverviewComponentObserver(mOverviewComponentObserver);
+ sSwipeSharedState.setOverviewComponentObserver(mOverviewComponentObserver);
mInputConsumer.registerInputConsumer();
onSystemUiProxySet();
onSystemUiFlagsChanged();
@@ -589,7 +593,7 @@
private InputConsumer newBaseConsumer(boolean useSharedState, MotionEvent event) {
final RunningTaskInfo runningTaskInfo = mAM.getRunningTask(0);
if (!useSharedState) {
- mSwipeSharedState.clearAllState();
+ sSwipeSharedState.clearAllState(false /* finishAnimation */);
}
if ((mSystemUiStateFlags & SYSUI_STATE_STATUS_BAR_KEYGUARD_SHOWING_OCCLUDED) != 0) {
// This handles apps showing over the lockscreen (e.g. camera)
@@ -599,16 +603,16 @@
final ActivityControlHelper activityControl =
mOverviewComponentObserver.getActivityControlHelper();
- if (runningTaskInfo == null && !mSwipeSharedState.goingToLauncher
- && !mSwipeSharedState.recentsAnimationFinishInterrupted) {
+ if (runningTaskInfo == null && !sSwipeSharedState.goingToLauncher
+ && !sSwipeSharedState.recentsAnimationFinishInterrupted) {
return mResetGestureInputConsumer;
- } else if (mSwipeSharedState.recentsAnimationFinishInterrupted) {
+ } else if (sSwipeSharedState.recentsAnimationFinishInterrupted) {
// If the finish animation was interrupted, then continue using the other activity input
// consumer but with the next task as the running task
RunningTaskInfo info = new ActivityManager.RunningTaskInfo();
- info.id = mSwipeSharedState.nextRunningTaskId;
+ info.id = sSwipeSharedState.nextRunningTaskId;
return createOtherActivityInputConsumer(event, info);
- } else if (mSwipeSharedState.goingToLauncher || activityControl.isResumed()) {
+ } else if (sSwipeSharedState.goingToLauncher || activityControl.isResumed()) {
return createOverviewInputConsumer(event);
} else if (ENABLE_QUICKSTEP_LIVE_TILE.get() && activityControl.isInLiveTileMode()) {
return createOverviewInputConsumer(event);
@@ -617,7 +621,7 @@
return mResetGestureInputConsumer;
} else if (mMode == Mode.NO_BUTTON && !mOverviewComponentObserver.isHomeAndOverviewSame()) {
return new FallbackNoButtonInputConsumer(this, activityControl,
- mInputMonitorCompat, mSwipeSharedState, mSwipeTouchRegion,
+ mInputMonitorCompat, sSwipeSharedState, mSwipeTouchRegion,
mOverviewComponentObserver, disableHorizontalSwipe(event), runningTaskInfo);
} else {
return createOtherActivityInputConsumer(event, runningTaskInfo);
@@ -640,13 +644,13 @@
return new OtherActivityInputConsumer(this, runningTaskInfo, mRecentsModel,
mOverviewComponentObserver.getOverviewIntent(), activityControl,
shouldDefer, mOverviewCallbacks, mInputConsumer, this::onConsumerInactive,
- mSwipeSharedState, mInputMonitorCompat, mSwipeTouchRegion,
+ sSwipeSharedState, mInputMonitorCompat, mSwipeTouchRegion,
disableHorizontalSwipe(event));
}
private InputConsumer createDeviceLockedInputConsumer(RunningTaskInfo taskInfo) {
if (mMode == Mode.NO_BUTTON && taskInfo != null) {
- return new DeviceLockedInputConsumer(this, mSwipeSharedState, mInputMonitorCompat,
+ return new DeviceLockedInputConsumer(this, sSwipeSharedState, mInputMonitorCompat,
mSwipeTouchRegion, taskInfo.taskId);
} else {
return mResetGestureInputConsumer;
@@ -661,7 +665,7 @@
return mResetGestureInputConsumer;
}
- if (activity.getRootView().hasWindowFocus() || mSwipeSharedState.goingToLauncher) {
+ if (activity.getRootView().hasWindowFocus() || sSwipeSharedState.goingToLauncher) {
return new OverviewInputConsumer(activity, mInputMonitorCompat,
false /* startingInActivityBounds */);
} else {
@@ -708,7 +712,7 @@
+ mOverviewComponentObserver.getActivityControlHelper().isResumed());
pw.println(" useSharedState=" + mConsumer.useSharedSwipeState());
if (mConsumer.useSharedSwipeState()) {
- mSwipeSharedState.dump(" ", pw);
+ sSwipeSharedState.dump(" ", pw);
}
pw.println(" mConsumer=" + mConsumer.getName());
pw.println("FeatureFlags:");
diff --git a/quickstep/recents_ui_overrides/src/com/android/quickstep/WindowTransformSwipeHandler.java b/quickstep/recents_ui_overrides/src/com/android/quickstep/WindowTransformSwipeHandler.java
index e9aa6d0..f1d1141 100644
--- a/quickstep/recents_ui_overrides/src/com/android/quickstep/WindowTransformSwipeHandler.java
+++ b/quickstep/recents_ui_overrides/src/com/android/quickstep/WindowTransformSwipeHandler.java
@@ -1259,6 +1259,8 @@
mActivityControlHelper.onLaunchTaskFailed(mActivity);
nextTask.notifyTaskLaunchFailed(TAG);
updateSysUiFlags(1 /* windowProgress == overview */);
+ } else {
+ mActivityControlHelper.onLaunchTaskSuccess(mActivity);
}
}, mMainThreadHandler);
doLogGesture(NEW_TASK);
diff --git a/quickstep/recents_ui_overrides/src/com/android/quickstep/inputconsumers/ResetGestureInputConsumer.java b/quickstep/recents_ui_overrides/src/com/android/quickstep/inputconsumers/ResetGestureInputConsumer.java
index 56cba21..8eede81 100644
--- a/quickstep/recents_ui_overrides/src/com/android/quickstep/inputconsumers/ResetGestureInputConsumer.java
+++ b/quickstep/recents_ui_overrides/src/com/android/quickstep/inputconsumers/ResetGestureInputConsumer.java
@@ -39,7 +39,7 @@
public void onMotionEvent(MotionEvent ev) {
if (ev.getAction() == MotionEvent.ACTION_DOWN
&& mSwipeSharedState.getActiveListener() != null) {
- mSwipeSharedState.clearAllState();
+ mSwipeSharedState.clearAllState(false /* finishAnimation */);
}
}
}
diff --git a/quickstep/recents_ui_overrides/src/com/android/quickstep/util/SwipeAnimationTargetSet.java b/quickstep/recents_ui_overrides/src/com/android/quickstep/util/SwipeAnimationTargetSet.java
index df9efa2..381c27a 100644
--- a/quickstep/recents_ui_overrides/src/com/android/quickstep/util/SwipeAnimationTargetSet.java
+++ b/quickstep/recents_ui_overrides/src/com/android/quickstep/util/SwipeAnimationTargetSet.java
@@ -106,6 +106,10 @@
finishController(false /* toRecents */, null, false /* sendUserLeaveHint */);
}
+ public void finishAnimation() {
+ finishController(true /* toRecents */, null, false /* sendUserLeaveHint */);
+ }
+
public interface SwipeAnimationListener {
void onRecentsAnimationStart(SwipeAnimationTargetSet targetSet);
diff --git a/quickstep/res/values/dimens.xml b/quickstep/res/values/dimens.xml
index 71259fd..b0968f9 100644
--- a/quickstep/res/values/dimens.xml
+++ b/quickstep/res/values/dimens.xml
@@ -38,7 +38,7 @@
<dimen name="motion_pause_detector_speed_very_slow">0.0285dp</dimen>
<dimen name="motion_pause_detector_speed_slow">0.15dp</dimen>
<dimen name="motion_pause_detector_speed_somewhat_fast">0.285dp</dimen>
- <dimen name="motion_pause_detector_speed_fast">0.5dp</dimen>
+ <dimen name="motion_pause_detector_speed_fast">1.4dp</dimen>
<dimen name="motion_pause_detector_min_displacement_from_app">36dp</dimen>
<!-- Launcher app transition -->
diff --git a/quickstep/src/com/android/launcher3/QuickstepAppTransitionManagerImpl.java b/quickstep/src/com/android/launcher3/QuickstepAppTransitionManagerImpl.java
index 8643160..44324cb 100644
--- a/quickstep/src/com/android/launcher3/QuickstepAppTransitionManagerImpl.java
+++ b/quickstep/src/com/android/launcher3/QuickstepAppTransitionManagerImpl.java
@@ -765,7 +765,7 @@
LauncherAnimationRunner.AnimationResult result) {
if (!mLauncher.hasBeenResumed()) {
// If launcher is not resumed, wait until new async-frame after resume
- mLauncher.setOnResumeCallback(() ->
+ mLauncher.addOnResumeCallback(() ->
postAsyncCallback(mHandler, () ->
onCreateAnimation(targetCompats, result)));
return;
diff --git a/quickstep/src/com/android/quickstep/ActivityControlHelper.java b/quickstep/src/com/android/quickstep/ActivityControlHelper.java
index 8675c3e..cd2c9cb 100644
--- a/quickstep/src/com/android/quickstep/ActivityControlHelper.java
+++ b/quickstep/src/com/android/quickstep/ActivityControlHelper.java
@@ -95,6 +95,8 @@
void onLaunchTaskFailed(T activity);
+ void onLaunchTaskSuccess(T activity);
+
interface ActivityInitListener {
void register();
diff --git a/quickstep/src/com/android/quickstep/views/ShelfScrimView.java b/quickstep/src/com/android/quickstep/views/ShelfScrimView.java
index b6ddb5f..63c8023 100644
--- a/quickstep/src/com/android/quickstep/views/ShelfScrimView.java
+++ b/quickstep/src/com/android/quickstep/views/ShelfScrimView.java
@@ -15,6 +15,7 @@
*/
package com.android.quickstep.views;
+import static com.android.launcher3.LauncherState.ALL_APPS_HEADER_EXTRA;
import static com.android.launcher3.LauncherState.BACKGROUND_APP;
import static com.android.launcher3.LauncherState.OVERVIEW;
import static com.android.launcher3.anim.Interpolators.ACCEL;
@@ -29,6 +30,7 @@
import android.graphics.Path;
import android.graphics.Path.Direction;
import android.graphics.Path.Op;
+import android.graphics.Rect;
import android.util.AttributeSet;
import android.view.animation.Interpolator;
@@ -36,6 +38,7 @@
import com.android.launcher3.R;
import com.android.launcher3.Utilities;
import com.android.launcher3.anim.Interpolators;
+import com.android.launcher3.uioverrides.states.OverviewState;
import com.android.launcher3.util.Themes;
import com.android.launcher3.views.ScrimView;
import com.android.quickstep.SysUINavigationMode;
@@ -145,14 +148,22 @@
mRemainingScreenPathValid = false;
mShiftRange = mLauncher.getAllAppsController().getShiftRange();
- mMidProgress = OVERVIEW.getVerticalProgress(mLauncher);
- mMidAlpha = mMidProgress >= 1 ? 0
- : Themes.getAttrInteger(getContext(), R.attr.allAppsInterimScrimAlpha);
+ if ((OVERVIEW.getVisibleElements(mLauncher) & ALL_APPS_HEADER_EXTRA) == 0) {
+ mMidProgress = 1;
+ mMidAlpha = 0;
+ } else {
+ mMidAlpha = Themes.getAttrInteger(getContext(), R.attr.allAppsInterimScrimAlpha);
+ Rect hotseatPadding = dp.getHotseatLayoutPadding();
+ int hotseatSize = dp.hotseatBarSizePx + dp.getInsets().bottom
+ - hotseatPadding.bottom - hotseatPadding.top;
+ float arrowTop = Math.min(hotseatSize, OverviewState.getDefaultSwipeHeight(dp));
+ mMidProgress = 1 - (arrowTop / mShiftRange);
+ }
mTopOffset = dp.getInsets().top - mShelfOffset;
mShelfTopAtThreshold = mShiftRange * SCRIM_CATCHUP_THRESHOLD + mTopOffset;
- updateColors();
}
+ updateColors();
updateDragHandleAlpha();
invalidate();
}
diff --git a/src/com/android/launcher3/Launcher.java b/src/com/android/launcher3/Launcher.java
index ad2783e..d9af4da 100644
--- a/src/com/android/launcher3/Launcher.java
+++ b/src/com/android/launcher3/Launcher.java
@@ -244,7 +244,7 @@
@Thunk boolean mWorkspaceLoading = true;
- private OnResumeCallback mOnResumeCallback;
+ private ArrayList<OnResumeCallback> mOnResumeCallbacks = new ArrayList<>();
private ViewOnDrawExecutor mPendingExecutor;
@@ -869,6 +869,7 @@
@Override
protected void onStop() {
super.onStop();
+
if (mLauncherCallbacks != null) {
mLauncherCallbacks.onStop();
}
@@ -951,7 +952,10 @@
mHandler.removeCallbacks(mHandleDeferredResume);
Utilities.postAsyncCallback(mHandler, mHandleDeferredResume);
- setOnResumeCallback(null);
+ for (OnResumeCallback cb : mOnResumeCallbacks) {
+ cb.onLauncherResume();
+ }
+ mOnResumeCallbacks.clear();
if (mLauncherCallbacks != null) {
mLauncherCallbacks.onResume();
@@ -1805,6 +1809,16 @@
android.util.Log.d(TestProtocol.NO_START_TAG,
"startActivitySafely outer");
}
+
+ if (!hasBeenResumed()) {
+ // Workaround an issue where the WM launch animation is clobbered when finishing the
+ // recents animation into launcher. Defer launching the activity until Launcher is
+ // next resumed.
+ addOnResumeCallback(() -> startActivitySafely(v, intent, item, sourceContainer));
+ UiFactory.clearSwipeSharedState(true /* finishAnimation */);
+ return true;
+ }
+
boolean success = super.startActivitySafely(v, intent, item, sourceContainer);
if (success && v instanceof BubbleTextView) {
// This is set to the view that launched the activity that navigated the user away
@@ -1813,7 +1827,7 @@
// state when we return to launcher.
BubbleTextView btv = (BubbleTextView) v;
btv.setStayPressed(true);
- setOnResumeCallback(btv);
+ addOnResumeCallback(btv);
}
return success;
}
@@ -1861,11 +1875,8 @@
return result;
}
- public void setOnResumeCallback(OnResumeCallback callback) {
- if (mOnResumeCallback != null) {
- mOnResumeCallback.onLauncherResume();
- }
- mOnResumeCallback = callback;
+ public void addOnResumeCallback(OnResumeCallback callback) {
+ mOnResumeCallbacks.add(callback);
}
/**
diff --git a/src/com/android/launcher3/SecondaryDropTarget.java b/src/com/android/launcher3/SecondaryDropTarget.java
index 0cf6e44..55cb6f2 100644
--- a/src/com/android/launcher3/SecondaryDropTarget.java
+++ b/src/com/android/launcher3/SecondaryDropTarget.java
@@ -179,7 +179,7 @@
DeferredOnComplete deferred = (DeferredOnComplete) d.dragSource;
if (target != null) {
deferred.mPackageName = target.getPackageName();
- mLauncher.setOnResumeCallback(deferred);
+ mLauncher.addOnResumeCallback(deferred);
} else {
deferred.sendFailure();
}
diff --git a/src_ui_overrides/com/android/launcher3/uioverrides/UiFactory.java b/src_ui_overrides/com/android/launcher3/uioverrides/UiFactory.java
index 17ff66e..5cc64dc 100644
--- a/src_ui_overrides/com/android/launcher3/uioverrides/UiFactory.java
+++ b/src_ui_overrides/com/android/launcher3/uioverrides/UiFactory.java
@@ -93,4 +93,6 @@
public static void resetPendingActivityResults(Launcher launcher, int requestCode) { }
+ public static void clearSwipeSharedState(boolean finishAnimation) {}
+
}
diff --git a/tests/src/com/android/launcher3/ui/TaplTestsLauncher3.java b/tests/src/com/android/launcher3/ui/TaplTestsLauncher3.java
index 06c56f2..c3168f8 100644
--- a/tests/src/com/android/launcher3/ui/TaplTestsLauncher3.java
+++ b/tests/src/com/android/launcher3/ui/TaplTestsLauncher3.java
@@ -275,8 +275,6 @@
@Test
@PortraitLandscape
public void testLaunchMenuItem() throws Exception {
- if (!TestHelpers.isInLauncherProcess()) return;
-
final AllApps allApps = mLauncher.
getWorkspace().
switchToAllApps();
@@ -323,8 +321,6 @@
@Test
@PortraitLandscape
public void testDragShortcut() throws Throwable {
- if (!TestHelpers.isInLauncherProcess()) return;
-
// 1. Open all apps and wait for load complete.
// 2. Find the app and long press it to show shortcuts.
// 3. Press icon center until shortcuts appear