RESOLVED FIXED 49857
Keep overlap testing logic until real 3d transforms are being used
https://bugs.webkit.org/show_bug.cgi?id=49857
Summary Keep overlap testing logic until real 3d transforms are being used
Simon Fraser (smfr)
Reported 2010-11-19 21:48:43 PST
When content uses translateZ(0) to force compositing layers, it throws us out of the overlap testing mode. We should stay in this mode until actual 3d is used.
Attachments
Patch (5.92 KB, patch)
2010-11-20 10:38 PST, Simon Fraser (smfr)
mitz: review+
Simon Fraser (smfr)
Comment 1 2010-11-20 10:38:56 PST
mitz
Comment 2 2010-11-20 10:48:52 PST
Comment on attachment 74483 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=74483&action=review > WebCore/rendering/RenderLayerCompositor.cpp:1290 > + RenderStyle* style = renderer->style(); Useless variable! > WebCore/rendering/RenderLayerCompositor.cpp:1294 > + TransformationMatrix* transform = toRenderBoxModelObject(renderer)->layer()->transform(); I think this one is unnecessary too.
Simon Fraser (smfr)
Comment 3 2010-11-20 12:13:31 PST
Hmm, this patch has some unwanted side-effects that break some tests.
Simon Fraser (smfr)
Comment 4 2010-11-20 12:18:40 PST
Ah, looks like overlap testing is creating layers in cases where we should be able to flatten them.
Simon Fraser (smfr)
Comment 5 2010-11-29 17:08:12 PST
I filed bug 50192 on overlap testing badness, which I'll fix before this one.
Eric Seidel (no email)
Comment 6 2010-12-20 22:44:25 PST
Looks like this hasn't been landed.
Simon Fraser (smfr)
Comment 7 2010-12-20 22:48:44 PST
(In reply to comment #6) > Looks like this hasn't been landed. See previous comment.
Simon Fraser (smfr)
Comment 8 2011-03-18 18:22:03 PDT
Simon Fraser (smfr)
Comment 9 2011-06-10 15:21:40 PDT
See also bug 56917.
Adrienne Walker
Comment 10 2011-06-10 15:30:29 PDT
(In reply to comment #9) > See also bug 56917. I kind of wonder why we disable the overlap test at all for 3d transformed layers. There's really no reason we couldn't calculate a bounding box for those layers. The bounding box may not fit perfectly, but we'd still end up potentially generating a lot fewer composited layers.
Simon Fraser (smfr)
Comment 11 2011-06-10 15:36:31 PDT
(In reply to comment #10) > (In reply to comment #9) > > See also bug 56917. > > I kind of wonder why we disable the overlap test at all for 3d transformed layers. > > There's really no reason we couldn't calculate a bounding box for those layers. The bounding box may not fit perfectly, but we'd still end up potentially generating a lot fewer composited layers. I think a simpler solution is to use overlap at overflow:hidden boundaries.
Simon Fraser (smfr)
Comment 12 2011-06-10 15:41:19 PDT
I filed bug 62487.
Simon Fraser (smfr)
Comment 13 2011-06-10 17:15:44 PDT
This change will cause extra layers to be created in the following tests: compositing/tiling/huge-layer-add-remove-child.html compositing/tiling/huge-layer-resize.html compositing/tiling/huge-layer.html
Simon Fraser (smfr)
Comment 14 2011-06-10 17:23:16 PDT
Alexey Proskuryakov
Comment 15 2011-06-16 10:23:51 PDT
This change has caused bug 62797.
Note You need to log in before you can comment on or make changes to this bug.