diff options
| -rw-r--r-- | services/accessibility/accessibility.aconfig | 10 | ||||
| -rw-r--r-- | services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java | 4 |
2 files changed, 13 insertions, 1 deletions
diff --git a/services/accessibility/accessibility.aconfig b/services/accessibility/accessibility.aconfig index a754ba547767..90e31f2e8d4c 100644 --- a/services/accessibility/accessibility.aconfig +++ b/services/accessibility/accessibility.aconfig @@ -83,6 +83,16 @@ flag { } flag { + name: "manager_avoid_receiver_timeout" + namespace: "accessibility" + description: "Register receivers on background handler so they have more time to complete" + bug: "333890389" + metadata { + purpose: PURPOSE_BUGFIX + } +} + +flag { name: "pinch_zoom_zero_min_span" namespace: "accessibility" description: "Whether to set min span of ScaleGestureDetector to zero." diff --git a/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java b/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java index cbb66dc18f28..fe99ffd8a649 100644 --- a/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java +++ b/services/accessibility/java/com/android/server/accessibility/AccessibilityManagerService.java @@ -1020,6 +1020,8 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub intentFilter.addAction(Intent.ACTION_USER_REMOVED); intentFilter.addAction(Intent.ACTION_SETTING_RESTORED); + Handler receiverHandler = + Flags.managerAvoidReceiverTimeout() ? BackgroundThread.getHandler() : null; mContext.registerReceiverAsUser(new BroadcastReceiver() { @Override public void onReceive(Context context, Intent intent) { @@ -1061,7 +1063,7 @@ public class AccessibilityManagerService extends IAccessibilityManager.Stub } } } - }, UserHandle.ALL, intentFilter, null, null); + }, UserHandle.ALL, intentFilter, null, receiverHandler); final IntentFilter filter = new IntentFilter(); filter.addAction(SafetyCenterManager.ACTION_SAFETY_CENTER_ENABLED_CHANGED); |