Merge "Shouldn't turn on other accessibility features in SuW." into rvc-dev am: c9f8b52b26
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11716081 Change-Id: I6ba87893740b1774fa73606722d11c41b9c8065f
This commit is contained in:
@@ -23,6 +23,7 @@ import static com.android.internal.accessibility.common.ShortcutConstants.Shortc
|
||||
import static com.android.internal.accessibility.dialog.AccessibilityTargetHelper.createEnableDialogContentView;
|
||||
import static com.android.internal.accessibility.dialog.AccessibilityTargetHelper.getInstalledTargets;
|
||||
import static com.android.internal.accessibility.dialog.AccessibilityTargetHelper.getTargets;
|
||||
import static com.android.internal.accessibility.util.AccessibilityUtils.isUserSetupCompleted;
|
||||
|
||||
import android.annotation.Nullable;
|
||||
import android.app.Activity;
|
||||
@@ -61,18 +62,8 @@ public class AccessibilityShortcutChooserActivity extends Activity {
|
||||
}
|
||||
|
||||
mTargets.addAll(getTargets(this, mShortcutType));
|
||||
|
||||
final String selectDialogTitle =
|
||||
getString(R.string.accessibility_select_shortcut_menu_title);
|
||||
mTargetAdapter = new ShortcutTargetAdapter(mTargets);
|
||||
mMenuDialog = new AlertDialog.Builder(this)
|
||||
.setTitle(selectDialogTitle)
|
||||
.setAdapter(mTargetAdapter, /* listener= */ null)
|
||||
.setPositiveButton(
|
||||
getString(R.string.edit_accessibility_shortcut_menu_button),
|
||||
/* listener= */ null)
|
||||
.setOnDismissListener(dialog -> finish())
|
||||
.create();
|
||||
mMenuDialog = createMenuDialog();
|
||||
mMenuDialog.setOnShowListener(dialog -> updateDialogListeners());
|
||||
mMenuDialog.show();
|
||||
}
|
||||
@@ -154,4 +145,22 @@ public class AccessibilityShortcutChooserActivity extends Activity {
|
||||
mMenuDialog.getListView().setOnItemClickListener(
|
||||
isEditMenuMode ? this::onTargetChecked : this::onTargetSelected);
|
||||
}
|
||||
|
||||
private AlertDialog createMenuDialog() {
|
||||
final String dialogTitle =
|
||||
getString(R.string.accessibility_select_shortcut_menu_title);
|
||||
|
||||
final AlertDialog.Builder builder = new AlertDialog.Builder(this)
|
||||
.setTitle(dialogTitle)
|
||||
.setAdapter(mTargetAdapter, /* listener= */ null)
|
||||
.setOnDismissListener(dialog -> finish());
|
||||
|
||||
if (isUserSetupCompleted(this)) {
|
||||
final String positiveButtonText =
|
||||
getString(R.string.edit_accessibility_shortcut_menu_button);
|
||||
builder.setPositiveButton(positiveButtonText, /* listener= */ null);
|
||||
}
|
||||
|
||||
return builder.create();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -156,4 +156,16 @@ public final class AccessibilityUtils {
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Indicates whether the current user has completed setup via the setup wizard.
|
||||
* {@link android.provider.Settings.Secure#USER_SETUP_COMPLETE}
|
||||
*
|
||||
* @return {@code true} if the setup is completed.
|
||||
*/
|
||||
public static boolean isUserSetupCompleted(Context context) {
|
||||
return Settings.Secure.getIntForUser(context.getContentResolver(),
|
||||
Settings.Secure.USER_SETUP_COMPLETE, /* def= */ 0, UserHandle.USER_CURRENT)
|
||||
!= /* false */ 0;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user