Loading services/accessibility/accessibility.aconfig +10 −0 Original line number Diff line number Diff line Loading @@ -44,6 +44,16 @@ flag { } } flag { name: "clear_shortcuts_when_activity_updates_to_service" namespace: "accessibility" description: "When an a11y activity is updated to an a11y service, clears the associated shortcuts so that we don't skip the AccessibilityServiceWarning." bug: "358092445" metadata { purpose: PURPOSE_BUGFIX } } flag { name: "compute_window_changes_on_a11y_v2" namespace: "accessibility" Loading services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java +13 −0 Original line number Diff line number Diff line Loading @@ -2513,6 +2513,19 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub private boolean readInstalledAccessibilityShortcutLocked(AccessibilityUserState userState, List<AccessibilityShortcutInfo> parsedAccessibilityShortcutInfos) { if (!parsedAccessibilityShortcutInfos.equals(userState.mInstalledShortcuts)) { if (Flags.clearShortcutsWhenActivityUpdatesToService()) { List<String> componentNames = userState.mInstalledShortcuts.stream() .filter(a11yActivity -> !parsedAccessibilityShortcutInfos.contains(a11yActivity)) .map(a11yActivity -> a11yActivity.getComponentName().flattenToString()) .toList(); if (!componentNames.isEmpty()) { enableShortcutsForTargets( /* enable= */ false, UserShortcutType.ALL, componentNames, userState.mUserId); } } userState.mInstalledShortcuts.clear(); userState.mInstalledShortcuts.addAll(parsedAccessibilityShortcutInfos); userState.updateTileServiceMapForAccessibilityActivityLocked(); Loading Loading
services/accessibility/accessibility.aconfig +10 −0 Original line number Diff line number Diff line Loading @@ -44,6 +44,16 @@ flag { } } flag { name: "clear_shortcuts_when_activity_updates_to_service" namespace: "accessibility" description: "When an a11y activity is updated to an a11y service, clears the associated shortcuts so that we don't skip the AccessibilityServiceWarning." bug: "358092445" metadata { purpose: PURPOSE_BUGFIX } } flag { name: "compute_window_changes_on_a11y_v2" namespace: "accessibility" Loading
services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java +13 −0 Original line number Diff line number Diff line Loading @@ -2513,6 +2513,19 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub private boolean readInstalledAccessibilityShortcutLocked(AccessibilityUserState userState, List<AccessibilityShortcutInfo> parsedAccessibilityShortcutInfos) { if (!parsedAccessibilityShortcutInfos.equals(userState.mInstalledShortcuts)) { if (Flags.clearShortcutsWhenActivityUpdatesToService()) { List<String> componentNames = userState.mInstalledShortcuts.stream() .filter(a11yActivity -> !parsedAccessibilityShortcutInfos.contains(a11yActivity)) .map(a11yActivity -> a11yActivity.getComponentName().flattenToString()) .toList(); if (!componentNames.isEmpty()) { enableShortcutsForTargets( /* enable= */ false, UserShortcutType.ALL, componentNames, userState.mUserId); } } userState.mInstalledShortcuts.clear(); userState.mInstalledShortcuts.addAll(parsedAccessibilityShortcutInfos); userState.updateTileServiceMapForAccessibilityActivityLocked(); Loading