Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1290)

Unified Diff: android_webview/java/src/org/chromium/android_webview/AwContents.java

Issue 1907703002: Fix a nasty scroll bug for Chrome Now-on-tap feature. Also combine the (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: fix findbug issue (remove unused variable) Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: android_webview/java/src/org/chromium/android_webview/AwContents.java
diff --git a/android_webview/java/src/org/chromium/android_webview/AwContents.java b/android_webview/java/src/org/chromium/android_webview/AwContents.java
index 2563b90ff26ac3baeb648b36ed24d2186525bb28..7e906cf1f8c504b07ef0205de64cee954a08bbdd 100644
--- a/android_webview/java/src/org/chromium/android_webview/AwContents.java
+++ b/android_webview/java/src/org/chromium/android_webview/AwContents.java
@@ -5,6 +5,7 @@
package org.chromium.android_webview;
import android.annotation.SuppressLint;
+import android.annotation.TargetApi;
import android.app.Activity;
import android.content.ComponentCallbacks2;
import android.content.Context;
@@ -32,6 +33,7 @@ import android.view.KeyEvent;
import android.view.MotionEvent;
import android.view.View;
import android.view.ViewGroup;
+import android.view.ViewStructure;
import android.view.accessibility.AccessibilityEvent;
import android.view.accessibility.AccessibilityNodeInfo;
import android.view.accessibility.AccessibilityNodeProvider;
@@ -58,7 +60,6 @@ import org.chromium.content.browser.ContentViewCore;
import org.chromium.content.browser.ContentViewStatics;
import org.chromium.content.browser.SmartClipProvider;
import org.chromium.content.common.CleanupReference;
-import org.chromium.content_public.browser.AccessibilitySnapshotCallback;
import org.chromium.content_public.browser.GestureStateListener;
import org.chromium.content_public.browser.JavaScriptCallback;
import org.chromium.content_public.browser.LoadUrlParams;
@@ -2250,13 +2251,17 @@ public class AwContents implements SmartClipProvider,
return mWebContents.hasAccessedInitialDocument();
}
- public void requestAccessibilitySnapshot(AccessibilitySnapshotCallback callback) {
+ @TargetApi(Build.VERSION_CODES.M)
+ public void onProvideVirtualStructure(ViewStructure structure) {
if (isDestroyed(WARN)) return;
if (!mWebContentsObserver.didEverCommitNavigation()) {
- callback.onAccessibilitySnapshot(null);
+ // TODO(sgurun) write a test case for this condition crbug/605251
+ structure.setChildCount(0);
return;
}
- mWebContents.requestAccessibilitySnapshot(callback, 0, 0);
+ // for webview, the platform already calculates the scroll (as it is a view) in
+ // ViewStructure tree. Do not offset for it in the snapshop x,y position calculations.
+ mContentViewCore.onProvideVirtualStructure(structure, true);
}
public boolean isSelectActionModeAllowed(int actionModeItem) {

Powered by Google App Engine
This is Rietveld 408576698