Merge "Handle transitining out of overview more gracefully for 3P launchers" into sc-dev am: 9bb040ec6d

Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Launcher3/+/14142323

Change-Id: I2d2f4cde17a0bbd19a537a4d3b17b280d330ddc9
This commit is contained in:
TreeHugger Robot
2021-04-12 23:21:33 +00:00
committed by Automerger Merge Worker
@@ -27,6 +27,7 @@ import android.view.MotionEvent;
import androidx.annotation.Nullable;
import com.android.launcher3.DeviceProfile;
import com.android.launcher3.statemanager.StateManager;
import com.android.launcher3.touch.PagedOrientationHandler;
import com.android.quickstep.fallback.RecentsState;
import com.android.quickstep.util.ActivityInitListener;
@@ -139,7 +140,25 @@ public final class FallbackActivityInterface extends
@Override
public void onExitOverview(RotationTouchHelper deviceState, Runnable exitRunnable) {
// no-op, fake landscape not supported for 3P
final StateManager<RecentsState> stateManager = getCreatedActivity().getStateManager();
if (stateManager.getState() == HOME) {
exitRunnable.run();
notifyRecentsOfOrientation(deviceState);
return;
}
stateManager.addStateListener(
new StateManager.StateListener<RecentsState>() {
@Override
public void onStateTransitionComplete(RecentsState toState) {
// Are we going from Recents to Workspace?
if (toState == HOME) {
exitRunnable.run();
notifyRecentsOfOrientation(deviceState);
stateManager.removeStateListener(this);
}
}
});
}
@Override