From dee7b1ba968a2e8dd420783c04a9b49f014232e3 Mon Sep 17 00:00:00 2001 From: Nicolas Roard Date: Thu, 6 Oct 2011 17:12:40 -0700 Subject: [PATCH] Trigger a full screen repaint when touching layers, as webkitDraw() may not generate the correct invalidations. counterpart java CL: https://android-git.corp.google.com/g/#/c/140427/ bug:5425608 bug:5218173 Change-Id: I4a958a6fac4054a1040cb077cdfa2aff076e3fad --- core/java/android/webkit/WebViewCore.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/core/java/android/webkit/WebViewCore.java b/core/java/android/webkit/WebViewCore.java index 440ee79aa0fdc..9d926536ef8fb 100644 --- a/core/java/android/webkit/WebViewCore.java +++ b/core/java/android/webkit/WebViewCore.java @@ -2019,10 +2019,10 @@ public final class WebViewCore { if (nativeUpdateLayers(mLastDrawData.mBaseLayer)) { // If anything more complex than position has been touched, let's do a full draw webkitDraw(); - } else { - Message.obtain(mWebView.mPrivateHandler, - WebView.INVAL_RECT_MSG_ID).sendToTarget(); } + mWebView.mPrivateHandler.removeMessages(WebView.INVAL_RECT_MSG_ID); + mWebView.mPrivateHandler.sendMessageAtFrontOfQueue(mWebView.mPrivateHandler + .obtainMessage(WebView.INVAL_RECT_MSG_ID)); } private void webkitDraw() {