| Index: content/public/android/java/src/org/chromium/content/browser/webcontents/WebContentsImpl.java
|
| diff --git a/content/public/android/java/src/org/chromium/content/browser/webcontents/WebContentsImpl.java b/content/public/android/java/src/org/chromium/content/browser/webcontents/WebContentsImpl.java
|
| index 2e53449a720b4dc0b79468dac988e0ed80c26580..43c41634b64decec9511f28a1ddb3156bd12e2d0 100644
|
| --- a/content/public/android/java/src/org/chromium/content/browser/webcontents/WebContentsImpl.java
|
| +++ b/content/public/android/java/src/org/chromium/content/browser/webcontents/WebContentsImpl.java
|
| @@ -8,6 +8,8 @@ import android.graphics.Color;
|
|
|
| import org.chromium.base.CalledByNative;
|
| import org.chromium.base.JNINamespace;
|
| +import org.chromium.content_public.browser.AccessibilitySnapshotCallback;
|
| +import org.chromium.content_public.browser.AccessibilitySnapshotNode;
|
| import org.chromium.content_public.browser.JavaScriptCallback;
|
| import org.chromium.content_public.browser.NavigationController;
|
| import org.chromium.content_public.browser.NavigationTransitionDelegate;
|
| @@ -329,6 +331,32 @@ import org.chromium.content_public.browser.WebContentsObserver;
|
| }
|
|
|
| @Override
|
| + public void requestAccessibilitySnapshot(AccessibilitySnapshotCallback callback) {
|
| + nativeRequestAccessibilitySnapshot(mNativeWebContentsAndroid, callback);
|
| + }
|
| +
|
| + // root node can be null if parsing fails.
|
| + @CalledByNative
|
| + private static void onAccessibilitySnapshot(AccessibilitySnapshotNode root,
|
| + AccessibilitySnapshotCallback callback) {
|
| + callback.onAccessibilitySnapshot(root);
|
| + }
|
| +
|
| + @CalledByNative
|
| + private static void addAccessibilityNodeAsChild(AccessibilitySnapshotNode parent,
|
| + AccessibilitySnapshotNode child) {
|
| + parent.addChild(child);
|
| + }
|
| +
|
| + @CalledByNative
|
| + private static AccessibilitySnapshotNode createAccessibilitySnapshotNode(int id, int x,
|
| + int y, int scrollX, int scrollY, int width, int height, String text,
|
| + String className) {
|
| + return new AccessibilitySnapshotNode(id, x, y, scrollX, scrollY, width, height, text,
|
| + className);
|
| + }
|
| +
|
| + @Override
|
| public void addObserver(WebContentsObserver observer) {
|
| assert mNativeWebContentsAndroid != 0;
|
| if (mObserverProxy == null) mObserverProxy = new WebContentsObserverProxy(this);
|
| @@ -390,4 +418,6 @@ import org.chromium.content_public.browser.WebContentsObserver;
|
| private native boolean nativeHasAccessedInitialDocument(
|
| long nativeWebContentsAndroid);
|
| private native int nativeGetThemeColor(long nativeWebContentsAndroid);
|
| + private native void nativeRequestAccessibilitySnapshot(long nativeWebContentsAndroid,
|
| + AccessibilitySnapshotCallback callback);
|
| }
|
|
|