Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9b97217f authored by Winson Chung's avatar Winson Chung
Browse files

Handle long press directly if recents transition is deferred

- For 3p launchers, the starting of the home activity is deferred until
  the user moves past a slop, in these cases we don't need to worry
  about finishing the recents transition before handling long press
  (since it was never started)

Fixes: 307254136
Test: Enable 3p launcher and invoke omni
Change-Id: I0aed7e7d442e010c38979e3f806f6cf0eb33cfe8
parent 8a01ea88
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -114,7 +114,7 @@ public class NavHandleLongPressInputConsumer extends DelegateInputConsumer {
        if (longPressRunnable != null) {
            OtherActivityInputConsumer oaic = getInputConsumerOfClass(
                    OtherActivityInputConsumer.class);
            if (oaic != null) {
            if (oaic != null && oaic.hasStartedTouchTracking()) {
                oaic.setForceFinishRecentsTransitionCallback(longPressRunnable);
                setActive(mCurrentDownEvent);
            } else {
+8 −0
Original line number Diff line number Diff line
@@ -412,6 +412,14 @@ public class OtherActivityInputConsumer extends ContextWrapper implements InputC
        }
    }

    /**
     * Returns whether this input consumer has started touch tracking (if touch tracking is not
     * deferred).
     */
    public boolean hasStartedTouchTracking() {
        return mInteractionHandler != null;
    }

    /**
     * Called when the gesture has ended. Does not correlate to the completion of the interaction as
     * the animation can still be running.