summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/platform/graphics/android/rendering/Surface.cpp
diff options
context:
space:
mode:
authorNicolas Roard <nicolasroard@google.com>2012-05-17 18:59:40 -0700
committerNicolas Roard <nicolasroard@google.com>2012-05-17 18:59:40 -0700
commit9b0772e730f6ddda6199c42de267fc7742716c00 (patch)
tree1756e6908b41fcb10395d241d47ca2954543f303 /Source/WebCore/platform/graphics/android/rendering/Surface.cpp
parent377dc9f6b46a2ac0f968d9ee8d3c7916f3bf6904 (diff)
downloadexternal_webkit-9b0772e730f6ddda6199c42de267fc7742716c00.zip
external_webkit-9b0772e730f6ddda6199c42de267fc7742716c00.tar.gz
external_webkit-9b0772e730f6ddda6199c42de267fc7742716c00.tar.bz2
Fix repaint glitches on merged layers
bug:6502237 Change-Id: I62f296d429dcf4917ff2e93029022a7ab2cf3fd6
Diffstat (limited to 'Source/WebCore/platform/graphics/android/rendering/Surface.cpp')
-rw-r--r--Source/WebCore/platform/graphics/android/rendering/Surface.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/Source/WebCore/platform/graphics/android/rendering/Surface.cpp b/Source/WebCore/platform/graphics/android/rendering/Surface.cpp
index 20a9c2b..be1e176 100644
--- a/Source/WebCore/platform/graphics/android/rendering/Surface.cpp
+++ b/Source/WebCore/platform/graphics/android/rendering/Surface.cpp
@@ -99,7 +99,8 @@ bool Surface::tryUpdateSurface(Surface* oldSurface)
bool fullInval = m_layers.size() != oldSurface->m_layers.size();
if (!fullInval) {
for (unsigned int i = 0; i < m_layers.size(); i++) {
- if (m_layers[i]->uniqueId() != oldSurface->m_layers[i]->uniqueId()) {
+ if ((m_layers[i]->uniqueId() != oldSurface->m_layers[i]->uniqueId())
+ || (m_layers[i]->fullContentAreaMapped() != oldSurface->m_layers[i]->fullContentAreaMapped())) {
// layer list has changed, fully invalidate
// TODO: partially invalidate based on layer size/position
fullInval = true;