diff options
| author | Chris Craik <ccraik@google.com> | 2012-05-31 15:05:57 -0700 |
|---|---|---|
| committer | Chris Craik <ccraik@google.com> | 2012-05-31 15:23:11 -0700 |
| commit | 41ee465734d0006797a8fd36e88976c1e85d161c (patch) | |
| tree | 05cb2444f76cc3b63bce158473aa3579f2dbccb3 /core/java/android/webkit/WebViewClassic.java | |
| parent | ce9b5c7611954fba91f4983bd41c0507b9931046 (diff) | |
| download | frameworks_base-41ee465734d0006797a8fd36e88976c1e85d161c.zip frameworks_base-41ee465734d0006797a8fd36e88976c1e85d161c.tar.gz frameworks_base-41ee465734d0006797a8fd36e88976c1e85d161c.tar.bz2 | |
Force webview invalidates on unsuccessful functor attach
Functor attach should always be successful, but adding a fallback just in
case. Also invalidates the WebView on initial content arriving.
bug:6511995
Change-Id: Ibca16505afec9f693ea4a7cc4966cd6d7353725c
Diffstat (limited to 'core/java/android/webkit/WebViewClassic.java')
| -rw-r--r-- | core/java/android/webkit/WebViewClassic.java | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/core/java/android/webkit/WebViewClassic.java b/core/java/android/webkit/WebViewClassic.java index 65fd59a..d1da53b 100644 --- a/core/java/android/webkit/WebViewClassic.java +++ b/core/java/android/webkit/WebViewClassic.java @@ -7827,15 +7827,18 @@ public final class WebViewClassic implements WebViewProvider, WebViewProvider.Sc mSendScrollEvent = true; int functor = 0; + boolean forceInval = isPictureAfterFirstLayout; ViewRootImpl viewRoot = mWebView.getViewRootImpl(); if (mWebView.isHardwareAccelerated() && viewRoot != null) { functor = nativeGetDrawGLFunction(mNativeClass); if (functor != 0) { - viewRoot.attachFunctor(functor); + // force an invalidate if functor attach not successful + forceInval |= !viewRoot.attachFunctor(functor); } } if (functor == 0 + || forceInval || mWebView.getLayerType() != View.LAYER_TYPE_NONE) { // invalidate the screen so that the next repaint will show new content // TODO: partial invalidate |
