From dc9701f427ec922b9161d3cf5b5638a06fd72e8e Mon Sep 17 00:00:00 2001 From: yyalan Date: Wed, 12 Jun 2024 14:52:18 +0000 Subject: [PATCH] Launch oobe from Settings Bug: 344860480 Flag: com.android.systemui.shared.new_touchpad_gestures_tutorial Test: Manual Change-Id: Iabc155d2f99717c6489308ffb1e63ef4e59f0332 --- Android.bp | 1 + ...TouchGesturesButtonPreferenceController.java | 17 ++++++++++++++--- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/Android.bp b/Android.bp index cb898bef834..bdc9d376c9b 100644 --- a/Android.bp +++ b/Android.bp @@ -85,6 +85,7 @@ android_library { "notification_flags_lib", "securebox", "android.os.flags-aconfig-java", + "//frameworks/libs/systemui:com_android_systemui_shared_flags_lib", // Settings dependencies "FingerprintManagerInteractor", diff --git a/src/com/android/settings/inputmethod/TouchGesturesButtonPreferenceController.java b/src/com/android/settings/inputmethod/TouchGesturesButtonPreferenceController.java index 648a3e62f03..245901e16d3 100644 --- a/src/com/android/settings/inputmethod/TouchGesturesButtonPreferenceController.java +++ b/src/com/android/settings/inputmethod/TouchGesturesButtonPreferenceController.java @@ -16,8 +16,11 @@ package com.android.settings.inputmethod; +import static com.android.systemui.shared.Flags.newTouchpadGesturesTutorial; + import android.app.settings.SettingsEnums; import android.content.Context; +import android.content.Intent; import android.util.FeatureFlagUtils; import androidx.fragment.app.Fragment; @@ -34,6 +37,7 @@ public class TouchGesturesButtonPreferenceController extends BasePreferenceContr private static final int ORDER_BOTTOM = 100; private static final String PREFERENCE_KEY = "trackpad_touch_gesture"; private static final String GESTURE_DIALOG_TAG = "GESTURE_DIALOG_TAG"; + private static final String TUTORIAL_ACTION = "com.android.systemui.action.TOUCHPAD_TUTORIAL"; private Fragment mParent; private MetricsFeatureProvider mMetricsFeatureProvider; @@ -73,8 +77,15 @@ public class TouchGesturesButtonPreferenceController extends BasePreferenceContr private void showTouchpadGestureEducation() { mMetricsFeatureProvider.action(mContext, SettingsEnums.ACTION_LEARN_TOUCHPAD_GESTURE_CLICK); - TrackpadGestureDialogFragment fragment = new TrackpadGestureDialogFragment(); - fragment.setTargetFragment(mParent, 0); - fragment.show(mParent.getActivity().getSupportFragmentManager(), GESTURE_DIALOG_TAG); + if (newTouchpadGesturesTutorial()) { + Intent intent = new Intent(TUTORIAL_ACTION); + intent.addCategory(Intent.CATEGORY_DEFAULT); + intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + mContext.startActivity(intent); + } else { + TrackpadGestureDialogFragment fragment = new TrackpadGestureDialogFragment(); + fragment.setTargetFragment(mParent, 0); + fragment.show(mParent.getActivity().getSupportFragmentManager(), GESTURE_DIALOG_TAG); + } } }