summaryrefslogtreecommitdiffstats
path: root/Source/WebCore/platform/graphics/android/rendering
diff options
context:
space:
mode:
Diffstat (limited to 'Source/WebCore/platform/graphics/android/rendering')
-rw-r--r--Source/WebCore/platform/graphics/android/rendering/Surface.cpp4
-rw-r--r--Source/WebCore/platform/graphics/android/rendering/Surface.h2
-rw-r--r--Source/WebCore/platform/graphics/android/rendering/SurfaceCollection.cpp4
3 files changed, 6 insertions, 4 deletions
diff --git a/Source/WebCore/platform/graphics/android/rendering/Surface.cpp b/Source/WebCore/platform/graphics/android/rendering/Surface.cpp
index 94b7b6e..106b045 100644
--- a/Source/WebCore/platform/graphics/android/rendering/Surface.cpp
+++ b/Source/WebCore/platform/graphics/android/rendering/Surface.cpp
@@ -264,12 +264,12 @@ bool Surface::drawGL(bool layerTilesDisabled)
return askRedraw;
}
-void Surface::swapTiles()
+void Surface::swapTiles(bool calculateFrameworkInvals)
{
if (!m_surfaceBacking)
return;
- if (m_surfaceBacking->swapTiles())
+ if (m_surfaceBacking->swapTiles() && calculateFrameworkInvals)
addFrameworkInvals();
}
diff --git a/Source/WebCore/platform/graphics/android/rendering/Surface.h b/Source/WebCore/platform/graphics/android/rendering/Surface.h
index 535d2c1..f9f38e6 100644
--- a/Source/WebCore/platform/graphics/android/rendering/Surface.h
+++ b/Source/WebCore/platform/graphics/android/rendering/Surface.h
@@ -51,7 +51,7 @@ public:
void addLayer(LayerAndroid* layer, const TransformationMatrix& transform);
void prepareGL(bool layerTilesDisabled, bool updateWithBlit);
bool drawGL(bool layerTilesDisabled);
- void swapTiles();
+ void swapTiles(bool calculateFrameworkInvals);
void addFrameworkInvals();
bool isReady();
bool isMissingContent();
diff --git a/Source/WebCore/platform/graphics/android/rendering/SurfaceCollection.cpp b/Source/WebCore/platform/graphics/android/rendering/SurfaceCollection.cpp
index 83b81a1..093c947 100644
--- a/Source/WebCore/platform/graphics/android/rendering/SurfaceCollection.cpp
+++ b/Source/WebCore/platform/graphics/android/rendering/SurfaceCollection.cpp
@@ -137,9 +137,11 @@ Color SurfaceCollection::getBackgroundColor()
void SurfaceCollection::swapTiles()
{
+ bool calculateFrameworkInvals = !m_compositedRoot->state()->inUnclippedDraw();
+
TRACE_METHOD();
for (unsigned int i = 0; i < m_surfaces.size(); i++)
- m_surfaces[i]->swapTiles();
+ m_surfaces[i]->swapTiles(calculateFrameworkInvals);
}
void SurfaceCollection::addFrameworkInvals()