summaryrefslogtreecommitdiffstats
path: root/WebCore/platform
diff options
context:
space:
mode:
authorShimeng (Simon) Wang <swang@google.com>2011-03-16 14:47:34 -0700
committerAndroid Git Automerger <android-git-automerger@android.com>2011-03-16 14:47:34 -0700
commit2322a2c93ef52b0b74f95103d0fc590a3b01d3ef (patch)
tree51ff3d56bd6cf8442ff1d1d02c3912837e60460e /WebCore/platform
parent9be8be9290228ee6857594048907bbeb8a6fb6b8 (diff)
parent6a3bd3f2b6b5a5c80e5fc1674550456b67e2cc7c (diff)
downloadexternal_webkit-2322a2c93ef52b0b74f95103d0fc590a3b01d3ef.zip
external_webkit-2322a2c93ef52b0b74f95103d0fc590a3b01d3ef.tar.gz
external_webkit-2322a2c93ef52b0b74f95103d0fc590a3b01d3ef.tar.bz2
am 6a3bd3f2: For first layout, reset current textures and update base layer.
* commit '6a3bd3f2b6b5a5c80e5fc1674550456b67e2cc7c': For first layout, reset current textures and update base layer.
Diffstat (limited to 'WebCore/platform')
-rw-r--r--WebCore/platform/graphics/android/GLWebViewState.cpp8
-rw-r--r--WebCore/platform/graphics/android/GLWebViewState.h3
2 files changed, 8 insertions, 3 deletions
diff --git a/WebCore/platform/graphics/android/GLWebViewState.cpp b/WebCore/platform/graphics/android/GLWebViewState.cpp
index 444ff17..62eab0f 100644
--- a/WebCore/platform/graphics/android/GLWebViewState.cpp
+++ b/WebCore/platform/graphics/android/GLWebViewState.cpp
@@ -111,13 +111,17 @@ GLWebViewState::~GLWebViewState()
}
void GLWebViewState::setBaseLayer(BaseLayerAndroid* layer, const SkRegion& inval,
- bool showVisualIndicator)
+ bool showVisualIndicator, bool isPictureAfterFirstLayout)
{
android::Mutex::Autolock lock(m_baseLayerLock);
- if (!layer) {
+ if (!layer || isPictureAfterFirstLayout) {
m_tiledPageA->setUsable(false);
m_tiledPageB->setUsable(false);
}
+ if (isPictureAfterFirstLayout) {
+ m_baseLayerUpdate = true;
+ m_invalidateRegion.setEmpty();
+ }
if (m_baseLayer && layer)
m_baseLayer->swapExtra(layer);
m_baseLayer = layer;
diff --git a/WebCore/platform/graphics/android/GLWebViewState.h b/WebCore/platform/graphics/android/GLWebViewState.h
index 3f68757..e3b33f2 100644
--- a/WebCore/platform/graphics/android/GLWebViewState.h
+++ b/WebCore/platform/graphics/android/GLWebViewState.h
@@ -175,7 +175,8 @@ public:
void resetTransitionTime() { m_transitionTime = -1; }
unsigned int paintBaseLayerContent(SkCanvas* canvas);
- void setBaseLayer(BaseLayerAndroid* layer, const SkRegion& inval, bool showVisualIndicator);
+ void setBaseLayer(BaseLayerAndroid* layer, const SkRegion& inval, bool showVisualIndicator,
+ bool isPictureAfterFirstLayout);
void setExtra(BaseLayerAndroid*, SkPicture&, const IntRect&, bool allowSame);
void scheduleUpdate(const double& currentTime, const SkIRect& viewport, float scale);