Handle backdrop views that have to tile
https://bugs.webkit.org/show_bug.cgi?id=142317
<rdar://problem/20049088>
Reviewed by Simon Fraser.
Take 2 - this was rolled out because Mavericks was crashing.
Source/WebCore:
Make sure backdrop layers don't tile. If they are big
enough, we'll leave it to the platform compositor to handle.
This also fixes a bug where if a layer changed from a backdrop
type to a tiled type, it would still retain its custom appearance
and we'd try to add children to the wrong layer.
Test: compositing/media-controls-bar-appearance-big.html
* platform/graphics/ca/GraphicsLayerCA.cpp:
(WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers): Check if
a layer needs a backdrop before checking if it needs to tile.
Source/WebKit2:
Add some better logging for custom appearance.
* Shared/mac/RemoteLayerTreeTransaction.mm:
(WebKit::RemoteLayerTreeTextStream::operator<<):
LayoutTests:
A test that creates some backdrop views, then makes them
big enough that it would trigger tiling (which we don't want
to happen).
* compositing/media-controls-bar-appearance-big-expected.txt: Added.
* compositing/media-controls-bar-appearance-big.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@183942 268f45cc-cd09-0410-ab3c-d52691b4dbfc
8 files changed