| Index: content/public/android/java/src/org/chromium/content/browser/accessibility/BrowserAccessibilityManager.java
|
| diff --git a/content/public/android/java/src/org/chromium/content/browser/accessibility/BrowserAccessibilityManager.java b/content/public/android/java/src/org/chromium/content/browser/accessibility/BrowserAccessibilityManager.java
|
| index 23e0ca37bcc9d00beefbc2d83aca147beb5a5719..774f036b63079135891038ec35d9d25a01eff1c3 100644
|
| --- a/content/public/android/java/src/org/chromium/content/browser/accessibility/BrowserAccessibilityManager.java
|
| +++ b/content/public/android/java/src/org/chromium/content/browser/accessibility/BrowserAccessibilityManager.java
|
| @@ -4,6 +4,7 @@
|
|
|
| package org.chromium.content.browser.accessibility;
|
|
|
| +import android.accessibilityservice.AccessibilityServiceInfo;
|
| import android.annotation.SuppressLint;
|
| import android.content.ContentResolver;
|
| import android.content.Context;
|
| @@ -58,7 +59,7 @@ public class BrowserAccessibilityManager {
|
|
|
| private final AccessibilityNodeProvider mAccessibilityNodeProvider;
|
| protected ContentViewCore mContentViewCore;
|
| - private final AccessibilityManager mAccessibilityManager;
|
| + protected final AccessibilityManager mAccessibilityManager;
|
| private final RenderCoordinates mRenderCoordinates;
|
| private long mNativeObj;
|
| private Rect mAccessibilityFocusRect;
|
| @@ -1213,6 +1214,65 @@ public class BrowserAccessibilityManager {
|
| == 1);
|
| }
|
|
|
| + /**
|
| + * Iterate over all enabled accessibility services and return a bitmask containing the union
|
| + * of all event types that they listen to.
|
| + * @return
|
| + */
|
| + @CalledByNative
|
| + private int getAccessibilityServiceEventTypeMask() {
|
| + int eventTypeMask = 0;
|
| + for (AccessibilityServiceInfo service :
|
| + mAccessibilityManager.getEnabledAccessibilityServiceList(
|
| + AccessibilityServiceInfo.FEEDBACK_ALL_MASK)) {
|
| + eventTypeMask |= service.eventTypes;
|
| + }
|
| + return eventTypeMask;
|
| + }
|
| +
|
| + /**
|
| + * Iterate over all enabled accessibility services and return a bitmask containing the union
|
| + * of all feedback types that they provide.
|
| + * @return
|
| + */
|
| + @CalledByNative
|
| + private int getAccessibilityServiceFeedbackTypeMask() {
|
| + int feedbackTypeMask = 0;
|
| + for (AccessibilityServiceInfo service :
|
| + mAccessibilityManager.getEnabledAccessibilityServiceList(
|
| + AccessibilityServiceInfo.FEEDBACK_ALL_MASK)) {
|
| + feedbackTypeMask |= service.feedbackType;
|
| + }
|
| + return feedbackTypeMask;
|
| + }
|
| +
|
| + /**
|
| + * Iterate over all enabled accessibility services and return a bitmask containing the union
|
| + * of all accessibility service flags from any of them.
|
| + * @return
|
| + */
|
| + @CalledByNative
|
| + private int getAccessibilityServiceFlagsMask() {
|
| + int flagsMask = 0;
|
| + for (AccessibilityServiceInfo service :
|
| + mAccessibilityManager.getEnabledAccessibilityServiceList(
|
| + AccessibilityServiceInfo.FEEDBACK_ALL_MASK)) {
|
| + flagsMask |= service.flags;
|
| + }
|
| + return flagsMask;
|
| + }
|
| +
|
| + /**
|
| + * Iterate over all enabled accessibility services and return a bitmask containing the union
|
| + * of all service capabilities.
|
| + * @return
|
| + */
|
| + @CalledByNative
|
| + protected int getAccessibilityServiceCapabilitiesMask() {
|
| + // Implemented in KitKatBrowserAccessibilityManager.
|
| + return 0;
|
| + }
|
| +
|
| private native void nativeOnAutofillPopupDisplayed(
|
| long nativeBrowserAccessibilityManagerAndroid);
|
| private native void nativeOnAutofillPopupDismissed(
|
|
|