haikuwebkit/LayoutTests/compositing/backing/backface-visibility-expecte...

4 lines
28 B
Plaintext
Raw Permalink Normal View History

Don't always make backing store for -webkit-backface-visibility:hidden https://bugs.webkit.org/show_bug.cgi?id=132420 Reviewed by Sam Weinig. Source/WebCore: Previously, -webkit-backface-visibility:hidden unconditionally created compositing layers with backing store. This results in high memory use on pages with this style applied to many elements (a cargo-cult "optimization"). Fix by only having -webkit-backface-visibility:hidden create compositing layers if some ancestor has a 3D transform. That's the only scenario in which the element can be flipped around to reveal the back side, so the only time we need to do compositing for this property. In future, we could be smarter, and only consider 3D transforms in the current preserve-3d context. Tests: compositing/backing/backface-visibility-in-3dtransformed.html compositing/backing/backface-visibility-in-transformed.html compositing/backing/backface-visibility.html * rendering/RenderLayer.cpp: (WebCore::RenderLayer::RenderLayer): (WebCore::RenderLayer::updateLayerPositions): (WebCore::RenderLayer::hitTestLayer): * rendering/RenderLayer.h: * rendering/RenderLayerCompositor.cpp: (WebCore::RenderLayerCompositor::requiresCompositingLayer): (WebCore::RenderLayerCompositor::requiresOwnBackingStore): (WebCore::RenderLayerCompositor::requiresCompositingForBackfaceVisibility): * rendering/RenderLayerCompositor.h: LayoutTests: Dump layers for elements with backface-visibility: hidden with various types of ancestors. * compositing/backing/backface-visibility-expected.txt: Added. * compositing/backing/backface-visibility-in-3dtransformed-expected.txt: Added. * compositing/backing/backface-visibility-in-3dtransformed.html: Added. * compositing/backing/backface-visibility-in-transformed-expected.txt: Added. * compositing/backing/backface-visibility-in-transformed.html: Added. * compositing/backing/backface-visibility.html: Added. * inspector-protocol/layers/layers-anonymous.html: Don't use backface-visibility for force a layer. Canonical link: https://commits.webkit.org/150473@main git-svn-id: https://svn.webkit.org/repository/webkit/trunk@168119 268f45cc-cd09-0410-ab3c-d52691b4dbfc
2014-05-01 20:56:21 +00:00
Should be no layers here.