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

Commit 40c043ac authored by Govinda Wasserman's avatar Govinda Wasserman
Browse files

Allow assistant handles to be requested by the assistant

Test: Tested locally
BUG:131615462
Change-Id: I428086d6d500ee8838c856bc867cbb40d3d2a581
parent 92c72105
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -177,6 +177,12 @@ public final class AssistHandleBehaviorController implements AssistHandleCallbac
        mBehaviorMap.get(mCurrentBehavior).onAssistantGesturePerformed();
    }

    void onAssistHandlesRequested() {
        if (mInGesturalMode) {
            mBehaviorMap.get(mCurrentBehavior).onAssistHandlesRequested();
        }
    }

    void setBehavior(AssistHandleBehavior behavior) {
        if (mCurrentBehavior == behavior) {
            return;
@@ -316,6 +322,7 @@ public final class AssistHandleBehaviorController implements AssistHandleCallbac
        void onModeActivated(Context context, AssistHandleCallbacks callbacks);
        default void onModeDeactivated() {}
        default void onAssistantGesturePerformed() {}
        default void onAssistHandlesRequested() {}
        default void dump(PrintWriter pw, String prefix) {}
    }
}
+7 −0
Original line number Diff line number Diff line
@@ -211,6 +211,13 @@ final class AssistHandleReminderExpBehavior implements BehaviorController {
                mContext.getContentResolver(), LEARNING_EVENT_COUNT_KEY, ++mLearningCount);
    }

    @Override
    public void onAssistHandlesRequested() {
        if (mAssistHandleCallbacks != null && !mIsDozing && !mIsNavBarHidden && !mOnLockscreen) {
            mAssistHandleCallbacks.showAndGo();
        }
    }

    private static boolean isNavBarHidden(int sysuiStateFlags) {
        return (sysuiStateFlags & QuickStepContract.SYSUI_STATE_NAV_BAR_HIDDEN) != 0;
    }
+9 −0
Original line number Diff line number Diff line
@@ -97,6 +97,8 @@ public class AssistManager implements ConfigurationChangedReceiver {
    private static final String INVOCATION_TIME_MS_KEY = "invocation_time_ms";
    private static final String INVOCATION_PHONE_STATE_KEY = "invocation_phone_state";
    public static final String INVOCATION_TYPE_KEY = "invocation_type";
    protected static final String ACTION_KEY = "action";
    protected static final String SHOW_ASSIST_HANDLES_ACTION = "show_assist_handles";

    public static final int INVOCATION_TYPE_GESTURE = 1;
    public static final int INVOCATION_TYPE_ACTIVE_EDGE = 2;
@@ -204,6 +206,9 @@ public class AssistManager implements ConfigurationChangedReceiver {
                        if (VERBOSE) {
                            Log.v(TAG, "UI hints received");
                        }
                        if (SHOW_ASSIST_HANDLES_ACTION.equals(hints.getString(ACTION_KEY))) {
                            requestAssistHandles();
                        }
                    }
                });
    }
@@ -277,6 +282,10 @@ public class AssistManager implements ConfigurationChangedReceiver {
        mUiController.onGestureCompletion(velocity);
    }

    protected void requestAssistHandles() {
        mHandleController.onAssistHandlesRequested();
    }

    public void hideAssist() {
        mAssistUtils.hideCurrentSession();
    }