title: Is there a way to force a WebView to update its Picture (view), while scrolling?
body: <p>If I run some javascript on a <code>WebView</code> while the <code>WebView</code> is being scrolled (with a finger on the screen), the view doesn't update with the new appearance until the finger is lifted from the device and the scroll stops.</p>
  
  <p>To test this, I am overriding <code>onScroll</code> in the <code>WebView</code> and there I am calling some javascript which changes the background of the page to a random color. This gets called over and over while the page is scrolling. So it should rapidly flash different colors as you scroll.</p>
  
  <p>However, on a Nexus S with Gingerbread and a Galaxy Nexus with Ice Cream Sandwich the color only updates when the scrolling stops.</p>
  
  <p>But on a Xoom with Honeycomb, the color updates constantly as you are scrolling. This is the desired result.</p>
  
  <p>Any ideas of what is different on the other devices and how to force the WebView to update itself while scrolling the way the Xoom did?</p>
  
  <p>Thanks!</p>
  
  <p><strong>More info:</strong> Just to note, the javascript is received and enacted during scroll, but the picture showing these changes doesn't appear until scrolling is over. For example, if the javascript you call is "console.log('rawr');" the logs while appear while scrolling.</p>
  
  <p><strong>Found something in the source code</strong>  There is a <code>WebView</code> method called <a href="http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/2.3_r1/android/webkit/WebView.java#WebView.startDrag%28%29" rel="nofollow">startDrag()</a> that calls <a href="http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/2.3_r1/android/webkit/WebViewCore.java#WebViewCore.pauseUpdatePicture%28android.webkit.WebViewCore%29" rel="nofollow">WebViewCore.pauseUpdatePicture(mWebViewCore)</a> that disables the picture from being updated while scrolling. In 3.0 they introduced the WebSetting <a href="http://developer.android.com/reference/android/webkit/WebSettings.html#setEnableSmoothTransition%28boolean%29" rel="nofollow">setEnabledSmoothTransition()</a> which you can see in the 4.0 code, allows you to disable the pausing.  However, this is only available 3.0 and greater, which means less than 3% of in the wild devices.  So far I do not see any way to get around this in devices before 3.0..... :(</p>