diff options
author | Nicolas Roard <nicolasroard@google.com> | 2012-05-17 18:59:40 -0700 |
---|---|---|
committer | Nicolas Roard <nicolasroard@google.com> | 2012-05-17 18:59:40 -0700 |
commit | 9b0772e730f6ddda6199c42de267fc7742716c00 (patch) | |
tree | 1756e6908b41fcb10395d241d47ca2954543f303 /Source/WebCore/platform/graphics/android/rendering/Surface.cpp | |
parent | 377dc9f6b46a2ac0f968d9ee8d3c7916f3bf6904 (diff) | |
download | external_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.cpp | 3 |
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; |