Loading src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragment.java +8 −6 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ import static com.android.settings.accessibility.AccessibilityUtil.getShortcutSu import static com.android.settings.accessibility.ToggleFeaturePreferenceFragment.KEY_GENERAL_CATEGORY; import static com.android.settings.accessibility.ToggleFeaturePreferenceFragment.KEY_SAVED_QS_TOOLTIP_TYPE; import android.annotation.SuppressLint; import android.app.Activity; import android.app.Dialog; import android.app.settings.SettingsEnums; Loading Loading @@ -51,6 +52,7 @@ import com.google.android.setupcompat.util.WizardManagerHelper; import java.util.ArrayList; import java.util.List; import java.util.Set; /** * Base class for accessibility fragments shortcut functions and dialog management. Loading Loading @@ -232,6 +234,7 @@ public abstract class AccessibilityShortcutPreferenceFragment extends Restricted ); } @SuppressLint("MissingPermission") @Override public void onToggleClicked(ShortcutPreference preference) { if (getComponentName() == null) { Loading @@ -239,13 +242,12 @@ public abstract class AccessibilityShortcutPreferenceFragment extends Restricted } final int shortcutTypes = getUserPreferredShortcutTypes(); if (preference.isChecked()) { AccessibilityUtil.optInAllValuesToSettings(getPrefContext(), shortcutTypes, getComponentName()); final boolean isChecked = preference.isChecked(); getPrefContext().getSystemService(AccessibilityManager.class).enableShortcutsForTargets( isChecked, shortcutTypes, Set.of(getComponentName().flattenToString()), getPrefContext().getUserId()); if (isChecked) { showDialog(DialogEnums.LAUNCH_ACCESSIBILITY_TUTORIAL); } else { AccessibilityUtil.optOutAllValuesFromSettings(getPrefContext(), shortcutTypes, getComponentName()); } mShortcutPreference.setSummary(getShortcutTypeSummary(getPrefContext())); } Loading src/com/android/settings/accessibility/AccessibilityUtil.java +0 −109 Original line number Diff line number Diff line Loading @@ -60,7 +60,6 @@ import java.lang.annotation.RetentionPolicy; import java.util.ArrayList; import java.util.List; import java.util.Locale; import java.util.Set; /** Provides utility methods to accessibility settings only. */ public final class AccessibilityUtil { Loading Loading @@ -195,114 +194,6 @@ public final class AccessibilityUtil { : AccessibilityServiceFragmentType.TOGGLE; } /** * Opts in component name into multiple {@code shortcutTypes} colon-separated string in * Settings. * * @param context The current context. * @param shortcutTypes A combination of {@link UserShortcutType}. * @param componentName The component name that need to be opted in Settings. * * @deprecated use * {@link AccessibilityManager#enableShortcutsForTargets(boolean, int, Set, int)} instead. * * (TODO 367414968: finish removal.) */ @Deprecated static void optInAllValuesToSettings(Context context, int shortcutTypes, @NonNull ComponentName componentName) { AccessibilityManager a11yManager = context.getSystemService(AccessibilityManager.class); if (a11yManager != null) { a11yManager.enableShortcutsForTargets( /* enable= */ true, shortcutTypes, Set.of(componentName.flattenToString()), UserHandle.myUserId() ); } } /** * Opts in component name into {@code shortcutType} colon-separated string in Settings. * * @param context The current context. * @param shortcutType The preferred shortcut type user selected. * @param componentName The component name that need to be opted in Settings. * * @deprecated use * {@link AccessibilityManager#enableShortcutsForTargets(boolean, int, Set, int)} instead. * * (TODO 367414968: finish removal.) */ @Deprecated @VisibleForTesting static void optInValueToSettings(Context context, @UserShortcutType int shortcutType, @NonNull ComponentName componentName) { AccessibilityManager a11yManager = context.getSystemService(AccessibilityManager.class); if (a11yManager != null) { a11yManager.enableShortcutsForTargets( /* enable= */ true, shortcutType, Set.of(componentName.flattenToString()), UserHandle.myUserId() ); } } /** * Opts out component name into multiple {@code shortcutTypes} colon-separated string in * Settings. * * @param context The current context. * @param shortcutTypes A combination of {@link UserShortcutType}. * @param componentName The component name that need to be opted out from Settings. * * @deprecated use * {@link AccessibilityManager#enableShortcutsForTargets(boolean, int, Set, int)} instead. * * (TODO 367414968: finish removal.) */ @Deprecated static void optOutAllValuesFromSettings(Context context, int shortcutTypes, @NonNull ComponentName componentName) { AccessibilityManager a11yManager = context.getSystemService(AccessibilityManager.class); if (a11yManager != null) { a11yManager.enableShortcutsForTargets( /* enable= */ false, shortcutTypes, Set.of(componentName.flattenToString()), UserHandle.myUserId() ); } } /** * Opts out component name into {@code shortcutType} colon-separated string in Settings. * * @param context The current context. * @param shortcutType The preferred shortcut type user selected. * @param componentName The component name that need to be opted out from Settings. * * @deprecated use * {@link AccessibilityManager#enableShortcutsForTargets(boolean, int, Set, int)} instead. * * (TODO 367414968: finish removal.) */ @Deprecated @VisibleForTesting static void optOutValueFromSettings(Context context, @UserShortcutType int shortcutType, @NonNull ComponentName componentName) { AccessibilityManager a11yManager = context.getSystemService(AccessibilityManager.class); if (a11yManager != null) { a11yManager.enableShortcutsForTargets( /* enable= */ false, shortcutType, Set.of(componentName.flattenToString()), UserHandle.myUserId() ); } } /** * Returns if component name existed in one of {@code shortcutTypes} string in Settings. * Loading src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java +11 −3 Original line number Diff line number Diff line Loading @@ -20,6 +20,7 @@ import static com.android.settings.accessibility.AccessibilityDialogUtils.Dialog import static com.android.settings.accessibility.AccessibilityStatsLogUtils.logAccessibilityServiceEnabled; import android.accessibilityservice.AccessibilityServiceInfo; import android.annotation.SuppressLint; import android.app.AlertDialog; import android.app.Dialog; import android.app.settings.SettingsEnums; Loading Loading @@ -53,6 +54,7 @@ import com.android.settingslib.accessibility.AccessibilityUtils; import java.util.List; import java.util.Locale; import java.util.Set; import java.util.concurrent.atomic.AtomicBoolean; /** Fragment for providing toggle bar and basic accessibility service setup. */ Loading Loading @@ -323,6 +325,7 @@ public class ToggleAccessibilityServicePreferenceFragment extends } } @SuppressLint("MissingPermission") @Override public void onToggleClicked(ShortcutPreference preference) { final int shortcutTypes = getUserPreferredShortcutTypes(); Loading @@ -337,8 +340,10 @@ public class ToggleAccessibilityServicePreferenceFragment extends onAllowButtonFromShortcutToggleClicked(); } } else { AccessibilityUtil.optOutAllValuesFromSettings(getPrefContext(), shortcutTypes, mComponentName); getPrefContext().getSystemService(AccessibilityManager.class) .enableShortcutsForTargets(false, shortcutTypes, Set.of(mComponentName.flattenToString()), getPrefContext().getUserId()); } mShortcutPreference.setSummary(getShortcutTypeSummary(getPrefContext())); } Loading Loading @@ -475,11 +480,14 @@ public class ToggleAccessibilityServicePreferenceFragment extends mWarningDialog.dismiss(); } @SuppressLint("MissingPermission") void onAllowButtonFromShortcutToggleClicked() { mShortcutPreference.setChecked(true); final int shortcutTypes = getUserPreferredShortcutTypes(); AccessibilityUtil.optInAllValuesToSettings(getPrefContext(), shortcutTypes, mComponentName); getPrefContext().getSystemService(AccessibilityManager.class) .enableShortcutsForTargets(true, shortcutTypes, Set.of(mComponentName.flattenToString()), getPrefContext().getUserId()); mIsDialogShown.set(false); showPopupDialog(DialogEnums.LAUNCH_ACCESSIBILITY_TUTORIAL); Loading src/com/android/settings/accessibility/ToggleFeaturePreferenceFragment.java +6 −6 Original line number Diff line number Diff line Loading @@ -72,6 +72,7 @@ import com.google.android.setupcompat.util.WizardManagerHelper; import java.util.ArrayList; import java.util.List; import java.util.Set; /** * Base class for accessibility fragments with toggle, shortcut, some helper functions Loading Loading @@ -685,13 +686,12 @@ public abstract class ToggleFeaturePreferenceFragment extends DashboardFragment } final int shortcutTypes = getUserPreferredShortcutTypes(); if (preference.isChecked()) { AccessibilityUtil.optInAllValuesToSettings(getPrefContext(), shortcutTypes, mComponentName); final boolean isChecked = preference.isChecked(); getPrefContext().getSystemService(AccessibilityManager.class).enableShortcutsForTargets( isChecked, shortcutTypes, Set.of(mComponentName.flattenToString()), getPrefContext().getUserId()); if (isChecked) { showDialog(DialogEnums.LAUNCH_ACCESSIBILITY_TUTORIAL); } else { AccessibilityUtil.optOutAllValuesFromSettings(getPrefContext(), shortcutTypes, mComponentName); } mShortcutPreference.setSummary(getShortcutTypeSummary(getPrefContext())); } Loading tests/robotests/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragmentTest.java +1 −1 Original line number Diff line number Diff line Loading @@ -153,7 +153,7 @@ public class AccessibilityShortcutPreferenceFragmentTest { @Test @Config(shadows = ShadowFragment.class) public void showQuickSettingsTooltipIfNeeded_qsFlagOn_dontShowTooltipView() { public void showQuickSettingsTooltipIfNeeded_dontShowTooltipView() { mFragment.showQuickSettingsTooltipIfNeeded(QuickSettingsTooltipType.GUIDE_TO_EDIT); assertThat(getLatestPopupWindow()).isNull(); Loading Loading
src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragment.java +8 −6 Original line number Diff line number Diff line Loading @@ -22,6 +22,7 @@ import static com.android.settings.accessibility.AccessibilityUtil.getShortcutSu import static com.android.settings.accessibility.ToggleFeaturePreferenceFragment.KEY_GENERAL_CATEGORY; import static com.android.settings.accessibility.ToggleFeaturePreferenceFragment.KEY_SAVED_QS_TOOLTIP_TYPE; import android.annotation.SuppressLint; import android.app.Activity; import android.app.Dialog; import android.app.settings.SettingsEnums; Loading Loading @@ -51,6 +52,7 @@ import com.google.android.setupcompat.util.WizardManagerHelper; import java.util.ArrayList; import java.util.List; import java.util.Set; /** * Base class for accessibility fragments shortcut functions and dialog management. Loading Loading @@ -232,6 +234,7 @@ public abstract class AccessibilityShortcutPreferenceFragment extends Restricted ); } @SuppressLint("MissingPermission") @Override public void onToggleClicked(ShortcutPreference preference) { if (getComponentName() == null) { Loading @@ -239,13 +242,12 @@ public abstract class AccessibilityShortcutPreferenceFragment extends Restricted } final int shortcutTypes = getUserPreferredShortcutTypes(); if (preference.isChecked()) { AccessibilityUtil.optInAllValuesToSettings(getPrefContext(), shortcutTypes, getComponentName()); final boolean isChecked = preference.isChecked(); getPrefContext().getSystemService(AccessibilityManager.class).enableShortcutsForTargets( isChecked, shortcutTypes, Set.of(getComponentName().flattenToString()), getPrefContext().getUserId()); if (isChecked) { showDialog(DialogEnums.LAUNCH_ACCESSIBILITY_TUTORIAL); } else { AccessibilityUtil.optOutAllValuesFromSettings(getPrefContext(), shortcutTypes, getComponentName()); } mShortcutPreference.setSummary(getShortcutTypeSummary(getPrefContext())); } Loading
src/com/android/settings/accessibility/AccessibilityUtil.java +0 −109 Original line number Diff line number Diff line Loading @@ -60,7 +60,6 @@ import java.lang.annotation.RetentionPolicy; import java.util.ArrayList; import java.util.List; import java.util.Locale; import java.util.Set; /** Provides utility methods to accessibility settings only. */ public final class AccessibilityUtil { Loading Loading @@ -195,114 +194,6 @@ public final class AccessibilityUtil { : AccessibilityServiceFragmentType.TOGGLE; } /** * Opts in component name into multiple {@code shortcutTypes} colon-separated string in * Settings. * * @param context The current context. * @param shortcutTypes A combination of {@link UserShortcutType}. * @param componentName The component name that need to be opted in Settings. * * @deprecated use * {@link AccessibilityManager#enableShortcutsForTargets(boolean, int, Set, int)} instead. * * (TODO 367414968: finish removal.) */ @Deprecated static void optInAllValuesToSettings(Context context, int shortcutTypes, @NonNull ComponentName componentName) { AccessibilityManager a11yManager = context.getSystemService(AccessibilityManager.class); if (a11yManager != null) { a11yManager.enableShortcutsForTargets( /* enable= */ true, shortcutTypes, Set.of(componentName.flattenToString()), UserHandle.myUserId() ); } } /** * Opts in component name into {@code shortcutType} colon-separated string in Settings. * * @param context The current context. * @param shortcutType The preferred shortcut type user selected. * @param componentName The component name that need to be opted in Settings. * * @deprecated use * {@link AccessibilityManager#enableShortcutsForTargets(boolean, int, Set, int)} instead. * * (TODO 367414968: finish removal.) */ @Deprecated @VisibleForTesting static void optInValueToSettings(Context context, @UserShortcutType int shortcutType, @NonNull ComponentName componentName) { AccessibilityManager a11yManager = context.getSystemService(AccessibilityManager.class); if (a11yManager != null) { a11yManager.enableShortcutsForTargets( /* enable= */ true, shortcutType, Set.of(componentName.flattenToString()), UserHandle.myUserId() ); } } /** * Opts out component name into multiple {@code shortcutTypes} colon-separated string in * Settings. * * @param context The current context. * @param shortcutTypes A combination of {@link UserShortcutType}. * @param componentName The component name that need to be opted out from Settings. * * @deprecated use * {@link AccessibilityManager#enableShortcutsForTargets(boolean, int, Set, int)} instead. * * (TODO 367414968: finish removal.) */ @Deprecated static void optOutAllValuesFromSettings(Context context, int shortcutTypes, @NonNull ComponentName componentName) { AccessibilityManager a11yManager = context.getSystemService(AccessibilityManager.class); if (a11yManager != null) { a11yManager.enableShortcutsForTargets( /* enable= */ false, shortcutTypes, Set.of(componentName.flattenToString()), UserHandle.myUserId() ); } } /** * Opts out component name into {@code shortcutType} colon-separated string in Settings. * * @param context The current context. * @param shortcutType The preferred shortcut type user selected. * @param componentName The component name that need to be opted out from Settings. * * @deprecated use * {@link AccessibilityManager#enableShortcutsForTargets(boolean, int, Set, int)} instead. * * (TODO 367414968: finish removal.) */ @Deprecated @VisibleForTesting static void optOutValueFromSettings(Context context, @UserShortcutType int shortcutType, @NonNull ComponentName componentName) { AccessibilityManager a11yManager = context.getSystemService(AccessibilityManager.class); if (a11yManager != null) { a11yManager.enableShortcutsForTargets( /* enable= */ false, shortcutType, Set.of(componentName.flattenToString()), UserHandle.myUserId() ); } } /** * Returns if component name existed in one of {@code shortcutTypes} string in Settings. * Loading
src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java +11 −3 Original line number Diff line number Diff line Loading @@ -20,6 +20,7 @@ import static com.android.settings.accessibility.AccessibilityDialogUtils.Dialog import static com.android.settings.accessibility.AccessibilityStatsLogUtils.logAccessibilityServiceEnabled; import android.accessibilityservice.AccessibilityServiceInfo; import android.annotation.SuppressLint; import android.app.AlertDialog; import android.app.Dialog; import android.app.settings.SettingsEnums; Loading Loading @@ -53,6 +54,7 @@ import com.android.settingslib.accessibility.AccessibilityUtils; import java.util.List; import java.util.Locale; import java.util.Set; import java.util.concurrent.atomic.AtomicBoolean; /** Fragment for providing toggle bar and basic accessibility service setup. */ Loading Loading @@ -323,6 +325,7 @@ public class ToggleAccessibilityServicePreferenceFragment extends } } @SuppressLint("MissingPermission") @Override public void onToggleClicked(ShortcutPreference preference) { final int shortcutTypes = getUserPreferredShortcutTypes(); Loading @@ -337,8 +340,10 @@ public class ToggleAccessibilityServicePreferenceFragment extends onAllowButtonFromShortcutToggleClicked(); } } else { AccessibilityUtil.optOutAllValuesFromSettings(getPrefContext(), shortcutTypes, mComponentName); getPrefContext().getSystemService(AccessibilityManager.class) .enableShortcutsForTargets(false, shortcutTypes, Set.of(mComponentName.flattenToString()), getPrefContext().getUserId()); } mShortcutPreference.setSummary(getShortcutTypeSummary(getPrefContext())); } Loading Loading @@ -475,11 +480,14 @@ public class ToggleAccessibilityServicePreferenceFragment extends mWarningDialog.dismiss(); } @SuppressLint("MissingPermission") void onAllowButtonFromShortcutToggleClicked() { mShortcutPreference.setChecked(true); final int shortcutTypes = getUserPreferredShortcutTypes(); AccessibilityUtil.optInAllValuesToSettings(getPrefContext(), shortcutTypes, mComponentName); getPrefContext().getSystemService(AccessibilityManager.class) .enableShortcutsForTargets(true, shortcutTypes, Set.of(mComponentName.flattenToString()), getPrefContext().getUserId()); mIsDialogShown.set(false); showPopupDialog(DialogEnums.LAUNCH_ACCESSIBILITY_TUTORIAL); Loading
src/com/android/settings/accessibility/ToggleFeaturePreferenceFragment.java +6 −6 Original line number Diff line number Diff line Loading @@ -72,6 +72,7 @@ import com.google.android.setupcompat.util.WizardManagerHelper; import java.util.ArrayList; import java.util.List; import java.util.Set; /** * Base class for accessibility fragments with toggle, shortcut, some helper functions Loading Loading @@ -685,13 +686,12 @@ public abstract class ToggleFeaturePreferenceFragment extends DashboardFragment } final int shortcutTypes = getUserPreferredShortcutTypes(); if (preference.isChecked()) { AccessibilityUtil.optInAllValuesToSettings(getPrefContext(), shortcutTypes, mComponentName); final boolean isChecked = preference.isChecked(); getPrefContext().getSystemService(AccessibilityManager.class).enableShortcutsForTargets( isChecked, shortcutTypes, Set.of(mComponentName.flattenToString()), getPrefContext().getUserId()); if (isChecked) { showDialog(DialogEnums.LAUNCH_ACCESSIBILITY_TUTORIAL); } else { AccessibilityUtil.optOutAllValuesFromSettings(getPrefContext(), shortcutTypes, mComponentName); } mShortcutPreference.setSummary(getShortcutTypeSummary(getPrefContext())); } Loading
tests/robotests/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragmentTest.java +1 −1 Original line number Diff line number Diff line Loading @@ -153,7 +153,7 @@ public class AccessibilityShortcutPreferenceFragmentTest { @Test @Config(shadows = ShadowFragment.class) public void showQuickSettingsTooltipIfNeeded_qsFlagOn_dontShowTooltipView() { public void showQuickSettingsTooltipIfNeeded_dontShowTooltipView() { mFragment.showQuickSettingsTooltipIfNeeded(QuickSettingsTooltipType.GUIDE_TO_EDIT); assertThat(getLatestPopupWindow()).isNull(); Loading