Chromium Code Reviews| 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..97f9010dcf67e73c70363915643c7063b6a8f2d5 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,11 +8,13 @@ import android.graphics.Color; |
| import org.chromium.base.CalledByNative; |
| import org.chromium.base.JNINamespace; |
| +import org.chromium.content_public.browser.AXTreeSnapshotCallback; |
| import org.chromium.content_public.browser.JavaScriptCallback; |
| import org.chromium.content_public.browser.NavigationController; |
| import org.chromium.content_public.browser.NavigationTransitionDelegate; |
| import org.chromium.content_public.browser.WebContents; |
| import org.chromium.content_public.browser.WebContentsObserver; |
| +import org.chromium.ui.AXNodeData; |
| /** |
| * The WebContentsImpl Java wrapper to allow communicating with the native WebContentsImpl |
| @@ -329,6 +331,27 @@ import org.chromium.content_public.browser.WebContentsObserver; |
| } |
| @Override |
| + public void requestAXTreeSnapshot(AXTreeSnapshotCallback callback) { |
| + nativeRequestAXTreeSnapshot(mNativeWebContentsAndroid, callback); |
| + } |
| + |
| + @CalledByNative |
| + private static void onAXTreeSnapshot(AXNodeData root, AXTreeSnapshotCallback callback) { |
| + callback.onAXTreeSnapshot(root); |
| + } |
| + |
| + @CalledByNative |
| + private static void addAXNodeAsChild(AXNodeData parent, AXNodeData child) { |
| + parent.addChild(child); |
| + } |
| + |
| + @CalledByNative |
| + private static AXNodeData createAXNode(int id, int x, int y, int scrollX, int scrollY, |
|
dmazzoni
2015/04/10 19:20:00
This makes me think that AXNodeData (or whatever w
sgurun-gerrit only
2015/04/10 23:24:50
Done.
|
| + int width, int height, String text, String className) { |
| + return new AXNodeData(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 +413,6 @@ import org.chromium.content_public.browser.WebContentsObserver; |
| private native boolean nativeHasAccessedInitialDocument( |
| long nativeWebContentsAndroid); |
| private native int nativeGetThemeColor(long nativeWebContentsAndroid); |
| + private native void nativeRequestAXTreeSnapshot(long nativeWebContentsAndroid, |
| + AXTreeSnapshotCallback callback); |
| } |