summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--WebKit/android/nav/WebView.cpp11
1 files changed, 10 insertions, 1 deletions
diff --git a/WebKit/android/nav/WebView.cpp b/WebKit/android/nav/WebView.cpp
index 8720c44..06b5422 100644
--- a/WebKit/android/nav/WebView.cpp
+++ b/WebKit/android/nav/WebView.cpp
@@ -376,6 +376,15 @@ bool drawCursorPreamble(CachedRoot* root)
m_viewImpl->m_hasCursorBounds = false;
return false;
}
+#if USE(ACCELERATED_COMPOSITING)
+ if (node->isInLayer()) {
+ LayerAndroid* layer = const_cast<LayerAndroid*>(root->rootLayer());
+ SkRect visible;
+ calcOurContentVisibleRect(&visible);
+ layer->updateFixedLayersPositions(visible);
+ layer->updatePositions();
+ }
+#endif
setVisibleRect(root);
m_ring.m_root = root;
m_ring.m_frame = frame;
@@ -632,7 +641,7 @@ CachedRoot* getFrameCache(FrameCachePermission allowNewer)
}
m_viewImpl->gFrameCacheMutex.lock();
delete m_frameCacheUI;
- delete m_navPictureUI;
+ m_navPictureUI->safeUnref();
m_viewImpl->m_updatedFrameCache = false;
m_frameCacheUI = m_viewImpl->m_frameCacheKit;
m_navPictureUI = m_viewImpl->m_navPictureKit;