summaryrefslogtreecommitdiff
path: root/core/java/android/webkit/WebView.java
diff options
context:
space:
mode:
authorChris Craik <ccraik@google.com>2011-11-29 10:26:10 -0800
committerChris Craik <ccraik@google.com>2011-11-29 15:25:47 -0800
commitd0051c06c2585398ca4ae54efb673d4a2d24aa5d (patch)
tree1b4a003350809c9f55e52ef52a802f9e92625685 /core/java/android/webkit/WebView.java
parent9b518d9304eb4ad17591944926231b661a3dfce0 (diff)
Send animation start notification back to webkit from ui thread
bug:5239801 depends on external/webkit CL: https://android-git.corp.google.com/g/#/c/152559/ Change-Id: I647b5a82680f570c918227dbf57521b862dcfe25
Diffstat (limited to 'core/java/android/webkit/WebView.java')
-rw-r--r--core/java/android/webkit/WebView.java12
1 files changed, 8 insertions, 4 deletions
diff --git a/core/java/android/webkit/WebView.java b/core/java/android/webkit/WebView.java
index 2af6e3be3c8f..71551598ae43 100644
--- a/core/java/android/webkit/WebView.java
+++ b/core/java/android/webkit/WebView.java
@@ -4604,14 +4604,15 @@ public class WebView extends AbsoluteLayout
boolean UIAnimationsRunning = false;
// Currently for each draw we compute the animation values;
// We may in the future decide to do that independently.
- if (mNativeClass != 0 && nativeEvaluateLayersAnimations(mNativeClass)) {
+ if (mNativeClass != 0 && !canvas.isHardwareAccelerated()
+ && nativeEvaluateLayersAnimations(mNativeClass)) {
UIAnimationsRunning = true;
// If we have unfinished (or unstarted) animations,
// we ask for a repaint. We only need to do this in software
// rendering (with hardware rendering we already have a different
// method of requesting a repaint)
- if (!canvas.isHardwareAccelerated())
- invalidate();
+ mWebViewCore.sendMessage(EventHub.NOTIFY_ANIMATION_STARTED);
+ invalidate();
}
// decide which adornments to draw
@@ -8796,10 +8797,13 @@ public class WebView extends AbsoluteLayout
/** @hide Called by JNI when pages are swapped (only occurs with hardware
* acceleration) */
- protected void pageSwapCallback() {
+ protected void pageSwapCallback(boolean notifyAnimationStarted) {
if (inEditingMode()) {
didUpdateWebTextViewDimensions(ANYWHERE);
}
+ if (notifyAnimationStarted) {
+ mWebViewCore.sendMessage(EventHub.NOTIFY_ANIMATION_STARTED);
+ }
}
void setNewPicture(final WebViewCore.DrawData draw, boolean updateBaseLayer) {