diff options
author | Chris Craik <ccraik@google.com> | 2012-05-23 16:01:50 -0700 |
---|---|---|
committer | Chris Craik <ccraik@google.com> | 2012-05-23 16:19:38 -0700 |
commit | bfd7e70d96a769e5d62fb5c9148b5c810a8bef65 (patch) | |
tree | 5e5a6bbdbfd1ccf95f702fa2d69b4fb087d59702 /Source/WebCore/platform/graphics/android/rendering/Surface.cpp | |
parent | 55d602593a60888cfc87c244a5e3258f35bae50e (diff) | |
download | external_webkit-bfd7e70d96a769e5d62fb5c9148b5c810a8bef65.zip external_webkit-bfd7e70d96a769e5d62fb5c9148b5c810a8bef65.tar.gz external_webkit-bfd7e70d96a769e5d62fb5c9148b5c810a8bef65.tar.bz2 |
Use Surface areas to compute tile usage
Previously we used the surface's first layer's area, which is often incorrect in
the case of significant layer merging.
bug:6545187
Change-Id: Ied3e5e3cd894b145ed905f8ba83649b3c4f3b1dd
Diffstat (limited to 'Source/WebCore/platform/graphics/android/rendering/Surface.cpp')
-rw-r--r-- | Source/WebCore/platform/graphics/android/rendering/Surface.cpp | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/Source/WebCore/platform/graphics/android/rendering/Surface.cpp b/Source/WebCore/platform/graphics/android/rendering/Surface.cpp index be1e176..94b7b6e 100644 --- a/Source/WebCore/platform/graphics/android/rendering/Surface.cpp +++ b/Source/WebCore/platform/graphics/android/rendering/Surface.cpp @@ -341,7 +341,13 @@ void Surface::computeTexturesAmount(TexturesResult* result) if (!m_surfaceBacking || isBase()) return; - m_surfaceBacking->computeTexturesAmount(result, getFirstLayer()); + + LayerAndroid* layer = 0; + if (singleLayer()) + layer = getFirstLayer(); + + m_surfaceBacking->computeTexturesAmount(result, visibleContentArea(), + fullContentArea(), layer); } bool Surface::isBase() |