Show quick setting tooltips after shortcut tutorial dialog dismiss

- ToggleAccessibilityServicePreferenceFragment for unbundle
accessibility service
- LaunchAccessibilityActivityPreferenceFragment for unbundle
accessibility shortcut-activity

Bug: 210356011
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AccessibilityGestureNavigationTutorialTest
Change-Id: I6f9e7e206ae7642d91e658ceb18b9e7ce4244a22
This commit is contained in:
menghanli
2022-02-04 13:25:58 +08:00
parent 553f84decb
commit 9855997b3c
4 changed files with 105 additions and 24 deletions

View File

@@ -20,9 +20,11 @@ import static com.android.settings.accessibility.AccessibilityStatsLogUtils.logA
import android.accessibilityservice.AccessibilityShortcutInfo;
import android.app.ActivityOptions;
import android.app.Dialog;
import android.content.ActivityNotFoundException;
import android.content.ComponentName;
import android.content.ContentResolver;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.pm.ActivityInfo;
import android.net.Uri;
@@ -124,6 +126,20 @@ public class LaunchAccessibilityActivityPreferenceFragment extends ToggleFeature
return null;
}
@Override
public Dialog onCreateDialog(int dialogId) {
switch (dialogId) {
case AccessibilityDialogUtils.DialogEnums.LAUNCH_ACCESSIBILITY_TUTORIAL:
final Dialog dialog = AccessibilityGestureNavigationTutorial
.createAccessibilityTutorialDialog(getPrefContext(),
getUserShortcutTypes(), this::callOnTutorialDialogButtonClicked);
dialog.setCanceledOnTouchOutside(false);
return dialog;
default:
return super.onCreateDialog(dialogId);
}
}
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
// Do not call super. We don't want to see the "Help & feedback" option on this page so as
@@ -208,4 +224,15 @@ public class LaunchAccessibilityActivityPreferenceFragment extends ToggleFeature
return settingsIntent;
}
/**
* This method will be invoked when a button in the tutorial dialog is clicked.
*
* @param dialog The dialog that received the click
* @param which The button that was clicked
*/
private void callOnTutorialDialogButtonClicked(DialogInterface dialog, int which) {
dialog.dismiss();
showQuickSettingsTooltipIfNeeded();
}
}