commit | 713924b1d8bf46ec9f665bc42af326b53440b6f6 | [log] [tgz] |
---|---|---|
author | Daniel Norman <[email protected]> | Thu Aug 08 23:20:56 2024 +0000 |
committer | Daniel Norman <[email protected]> | Thu Aug 08 23:22:23 2024 +0000 |
tree | 27927f27fd2a61c9c8dc9c418cf9228377340025 | |
parent | 67271f5bb119609a4f9400b505537de5449cea83 [diff] |
Recalculate restricted actions each time A11yMenu is opened. The set of restricted actions may change at runtime, and this also fixes a testing flake caused by restarting the service multiple times mid test. Bug: 347269196 Bug: 357747420 Test: atest AccessibilityMenuServiceTest Test: Same test on go/abtd Flag: com.android.systemui.accessibility.accessibilitymenu.hide_restricted_actions Change-Id: I5517a8a36ceb55f5f4b35d22a1b24ab569cd0426
diff --git a/packages/SystemUI/accessibility/accessibilitymenu/src/com/android/systemui/accessibility/accessibilitymenu/view/A11yMenuOverlayLayout.java b/packages/SystemUI/accessibility/accessibilitymenu/src/com/android/systemui/accessibility/accessibilitymenu/view/A11yMenuOverlayLayout.java index 2e036e6..6bea30f 100644 --- a/packages/SystemUI/accessibility/accessibilitymenu/src/com/android/systemui/accessibility/accessibilitymenu/view/A11yMenuOverlayLayout.java +++ b/packages/SystemUI/accessibility/accessibilitymenu/src/com/android/systemui/accessibility/accessibilitymenu/view/A11yMenuOverlayLayout.java
@@ -348,7 +348,17 @@ /** Toggles a11y menu layout visibility. */ public void toggleVisibility() { - mLayout.setVisibility((mLayout.getVisibility() == View.VISIBLE) ? View.GONE : View.VISIBLE); + if (mLayout.getVisibility() == View.VISIBLE) { + mLayout.setVisibility(View.GONE); + } else { + if (Flags.hideRestrictedActions()) { + // Reconfigure the shortcut list in case the set of restricted actions has changed. + mA11yMenuViewPager.configureViewPagerAndFooter( + mLayout, createShortcutList(), getPageIndex()); + updateViewLayout(); + } + mLayout.setVisibility(View.VISIBLE); + } } /** Shows hint text on a minimal Snackbar-like text view. */
diff --git a/packages/SystemUI/accessibility/accessibilitymenu/tests/src/com/android/systemui/accessibility/accessibilitymenu/tests/AccessibilityMenuServiceTest.java b/packages/SystemUI/accessibility/accessibilitymenu/tests/src/com/android/systemui/accessibility/accessibilitymenu/tests/AccessibilityMenuServiceTest.java index d16617f..4ab771be 100644 --- a/packages/SystemUI/accessibility/accessibilitymenu/tests/src/com/android/systemui/accessibility/accessibilitymenu/tests/AccessibilityMenuServiceTest.java +++ b/packages/SystemUI/accessibility/accessibilitymenu/tests/src/com/android/systemui/accessibility/accessibilitymenu/tests/AccessibilityMenuServiceTest.java
@@ -542,8 +542,6 @@ final Context context = sInstrumentation.getTargetContext(); final UserManager userManager = context.getSystemService(UserManager.class); userManager.setUserRestriction(restriction, isRestricted); - // Re-enable the service for the restriction to take effect. - enableA11yMenuService(context); } private static void unlockSignal() throws IOException {