Remove usages of bugfix flag cleanup_accessibility_warning_dialog.
Flag has been in Trunkfood for over a month. Includes one mechanical refactor to move a method from a now-removed file into a private method in the class that uses it: createDisableDialog (This flag guarded a preliminary cleanup and minor bug fix for b/303511250, but the actual feature for b/303511250 is tracked in a different flag 'skip_accessibility_warning_dialog_for_trusted_services') Bug: 303511250 Test: existing tests in Presubmit (no change to behavior) Change-Id: Iccf439adb2806e988310f503fb3891a6bd022054
This commit is contained in:
@@ -21,6 +21,7 @@ import static com.android.settings.accessibility.AccessibilityStatsLogUtils.logA
|
||||
import static com.android.settings.accessibility.PreferredShortcuts.retrieveUserShortcutType;
|
||||
|
||||
import android.accessibilityservice.AccessibilityServiceInfo;
|
||||
import android.app.AlertDialog;
|
||||
import android.app.Dialog;
|
||||
import android.app.settings.SettingsEnums;
|
||||
import android.content.BroadcastReceiver;
|
||||
@@ -35,6 +36,7 @@ import android.content.pm.ResolveInfo;
|
||||
import android.net.Uri;
|
||||
import android.os.Bundle;
|
||||
import android.os.SystemClock;
|
||||
import android.text.BidiFormatter;
|
||||
import android.text.TextUtils;
|
||||
import android.util.Log;
|
||||
import android.view.Menu;
|
||||
@@ -52,6 +54,7 @@ import com.android.settings.accessibility.shortcuts.EditShortcutsPreferenceFragm
|
||||
import com.android.settingslib.accessibility.AccessibilityUtils;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Locale;
|
||||
import java.util.concurrent.atomic.AtomicBoolean;
|
||||
|
||||
/** Fragment for providing toggle bar and basic accessibility service setup. */
|
||||
@@ -158,69 +161,63 @@ public class ToggleAccessibilityServicePreferenceFragment extends
|
||||
if (info == null) {
|
||||
return null;
|
||||
}
|
||||
if (android.view.accessibility.Flags.cleanupAccessibilityWarningDialog()) {
|
||||
mWarningDialog =
|
||||
com.android.internal.accessibility.dialog.AccessibilityServiceWarning
|
||||
.createAccessibilityServiceWarningDialog(getPrefContext(), info,
|
||||
v -> onAllowButtonFromEnableToggleClicked(),
|
||||
v -> onDenyButtonFromEnableToggleClicked(),
|
||||
v -> onDialogButtonFromUninstallClicked());
|
||||
} else {
|
||||
mWarningDialog = AccessibilityServiceWarning
|
||||
.createCapabilitiesDialog(getPrefContext(), info,
|
||||
this::onDialogButtonFromEnableToggleClicked,
|
||||
this::onDialogButtonFromUninstallClicked);
|
||||
}
|
||||
mWarningDialog =
|
||||
com.android.internal.accessibility.dialog.AccessibilityServiceWarning
|
||||
.createAccessibilityServiceWarningDialog(getPrefContext(), info,
|
||||
v -> onAllowButtonFromEnableToggleClicked(),
|
||||
v -> onDenyButtonFromEnableToggleClicked(),
|
||||
v -> onDialogButtonFromUninstallClicked());
|
||||
return mWarningDialog;
|
||||
case DialogEnums.ENABLE_WARNING_FROM_SHORTCUT_TOGGLE:
|
||||
if (info == null) {
|
||||
return null;
|
||||
}
|
||||
if (android.view.accessibility.Flags.cleanupAccessibilityWarningDialog()) {
|
||||
mWarningDialog =
|
||||
com.android.internal.accessibility.dialog.AccessibilityServiceWarning
|
||||
.createAccessibilityServiceWarningDialog(getPrefContext(), info,
|
||||
v -> onAllowButtonFromShortcutToggleClicked(),
|
||||
v -> onDenyButtonFromShortcutToggleClicked(),
|
||||
v -> onDialogButtonFromUninstallClicked());
|
||||
} else {
|
||||
mWarningDialog = AccessibilityServiceWarning
|
||||
.createCapabilitiesDialog(getPrefContext(), info,
|
||||
this::onDialogButtonFromShortcutToggleClicked,
|
||||
this::onDialogButtonFromUninstallClicked);
|
||||
}
|
||||
mWarningDialog =
|
||||
com.android.internal.accessibility.dialog.AccessibilityServiceWarning
|
||||
.createAccessibilityServiceWarningDialog(getPrefContext(), info,
|
||||
v -> onAllowButtonFromShortcutToggleClicked(),
|
||||
v -> onDenyButtonFromShortcutToggleClicked(),
|
||||
v -> onDialogButtonFromUninstallClicked());
|
||||
return mWarningDialog;
|
||||
case DialogEnums.ENABLE_WARNING_FROM_SHORTCUT:
|
||||
if (info == null) {
|
||||
return null;
|
||||
}
|
||||
if (android.view.accessibility.Flags.cleanupAccessibilityWarningDialog()) {
|
||||
mWarningDialog =
|
||||
com.android.internal.accessibility.dialog.AccessibilityServiceWarning
|
||||
.createAccessibilityServiceWarningDialog(getPrefContext(), info,
|
||||
v -> onAllowButtonFromShortcutClicked(),
|
||||
v -> onDenyButtonFromShortcutClicked(),
|
||||
v -> onDialogButtonFromUninstallClicked());
|
||||
} else {
|
||||
mWarningDialog = AccessibilityServiceWarning
|
||||
.createCapabilitiesDialog(getPrefContext(), info,
|
||||
this::onDialogButtonFromShortcutClicked,
|
||||
this::onDialogButtonFromUninstallClicked);
|
||||
}
|
||||
mWarningDialog =
|
||||
com.android.internal.accessibility.dialog.AccessibilityServiceWarning
|
||||
.createAccessibilityServiceWarningDialog(getPrefContext(), info,
|
||||
v -> onAllowButtonFromShortcutClicked(),
|
||||
v -> onDenyButtonFromShortcutClicked(),
|
||||
v -> onDialogButtonFromUninstallClicked());
|
||||
return mWarningDialog;
|
||||
case DialogEnums.DISABLE_WARNING_FROM_TOGGLE:
|
||||
if (info == null) {
|
||||
return null;
|
||||
}
|
||||
mWarningDialog = AccessibilityServiceWarning
|
||||
.createDisableDialog(getPrefContext(), info,
|
||||
this::onDialogButtonFromDisableToggleClicked);
|
||||
mWarningDialog = createDisableDialog(
|
||||
getPrefContext(), info, this::onDialogButtonFromDisableToggleClicked);
|
||||
return mWarningDialog;
|
||||
default:
|
||||
return super.onCreateDialog(dialogId);
|
||||
}
|
||||
}
|
||||
|
||||
/** Returns a {@link Dialog} to be shown to confirm that they want to disable a service. */
|
||||
private static Dialog createDisableDialog(Context context,
|
||||
AccessibilityServiceInfo info, DialogInterface.OnClickListener listener) {
|
||||
final Locale locale = context.getResources().getConfiguration().getLocales().get(0);
|
||||
final CharSequence label =
|
||||
info.getResolveInfo().loadLabel(context.getPackageManager());
|
||||
CharSequence serviceName = BidiFormatter.getInstance(locale).unicodeWrap(label);
|
||||
|
||||
return new AlertDialog.Builder(context)
|
||||
.setTitle(context.getString(R.string.disable_service_title, serviceName))
|
||||
.setCancelable(true)
|
||||
.setPositiveButton(R.string.accessibility_dialog_button_stop, listener)
|
||||
.setNegativeButton(R.string.accessibility_dialog_button_cancel, listener)
|
||||
.create();
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getDialogMetricsCategory(int dialogId) {
|
||||
switch (dialogId) {
|
||||
@@ -333,13 +330,9 @@ public class ToggleAccessibilityServicePreferenceFragment extends
|
||||
final int shortcutTypes = retrieveUserShortcutType(getPrefContext(),
|
||||
mComponentName.flattenToString(), getDefaultShortcutTypes());
|
||||
if (preference.isChecked()) {
|
||||
final boolean isWarningRequired;
|
||||
if (android.view.accessibility.Flags.cleanupAccessibilityWarningDialog()) {
|
||||
isWarningRequired = getPrefContext().getSystemService(AccessibilityManager.class)
|
||||
.isAccessibilityServiceWarningRequired(getAccessibilityServiceInfo());
|
||||
} else {
|
||||
isWarningRequired = !mToggleServiceSwitchPreference.isChecked();
|
||||
}
|
||||
final boolean isWarningRequired =
|
||||
getPrefContext().getSystemService(AccessibilityManager.class)
|
||||
.isAccessibilityServiceWarningRequired(getAccessibilityServiceInfo());
|
||||
if (isWarningRequired) {
|
||||
preference.setChecked(false);
|
||||
showPopupDialog(DialogEnums.ENABLE_WARNING_FROM_SHORTCUT_TOGGLE);
|
||||
@@ -355,15 +348,9 @@ public class ToggleAccessibilityServicePreferenceFragment extends
|
||||
|
||||
@Override
|
||||
public void onSettingsClicked(ShortcutPreference preference) {
|
||||
final boolean isWarningRequired;
|
||||
if (android.view.accessibility.Flags.cleanupAccessibilityWarningDialog()) {
|
||||
isWarningRequired = getPrefContext().getSystemService(AccessibilityManager.class)
|
||||
.isAccessibilityServiceWarningRequired(getAccessibilityServiceInfo());
|
||||
} else {
|
||||
isWarningRequired = !(mShortcutPreference.isChecked()
|
||||
|| mToggleServiceSwitchPreference.isChecked());
|
||||
}
|
||||
|
||||
final boolean isWarningRequired =
|
||||
getPrefContext().getSystemService(AccessibilityManager.class)
|
||||
.isAccessibilityServiceWarningRequired(getAccessibilityServiceInfo());
|
||||
if (isWarningRequired) {
|
||||
showPopupDialog(DialogEnums.ENABLE_WARNING_FROM_SHORTCUT);
|
||||
} else {
|
||||
@@ -537,17 +524,6 @@ public class ToggleAccessibilityServicePreferenceFragment extends
|
||||
mWarningDialog.dismiss();
|
||||
}
|
||||
|
||||
void onDialogButtonFromShortcutClicked(View view) {
|
||||
final int viewId = view.getId();
|
||||
if (viewId == R.id.permission_enable_allow_button) {
|
||||
onAllowButtonFromShortcutClicked();
|
||||
} else if (viewId == R.id.permission_enable_deny_button) {
|
||||
onDenyButtonFromShortcutClicked();
|
||||
} else {
|
||||
throw new IllegalArgumentException("Unexpected view id");
|
||||
}
|
||||
}
|
||||
|
||||
private void onAllowButtonFromShortcutClicked() {
|
||||
mIsDialogShown.set(false);
|
||||
if (Flags.editShortcutsInFullScreen()) {
|
||||
@@ -576,13 +552,9 @@ public class ToggleAccessibilityServicePreferenceFragment extends
|
||||
mToggleServiceSwitchPreference.setChecked(false);
|
||||
getArguments().putBoolean(AccessibilitySettings.EXTRA_CHECKED,
|
||||
/* disableService */ false);
|
||||
final boolean isWarningRequired;
|
||||
if (android.view.accessibility.Flags.cleanupAccessibilityWarningDialog()) {
|
||||
isWarningRequired = getPrefContext().getSystemService(AccessibilityManager.class)
|
||||
.isAccessibilityServiceWarningRequired(getAccessibilityServiceInfo());
|
||||
} else {
|
||||
isWarningRequired = !mShortcutPreference.isChecked();
|
||||
}
|
||||
final boolean isWarningRequired =
|
||||
getPrefContext().getSystemService(AccessibilityManager.class)
|
||||
.isAccessibilityServiceWarningRequired(getAccessibilityServiceInfo());
|
||||
if (isWarningRequired) {
|
||||
showPopupDialog(DialogEnums.ENABLE_WARNING_FROM_TOGGLE);
|
||||
} else {
|
||||
|
Reference in New Issue
Block a user