RESOLVED FIXED 130664
[CSS Blending] Compositing requirements for blending are not computed correctly
https://bugs.webkit.org/show_bug.cgi?id=130664
Summary [CSS Blending] Compositing requirements for blending are not computed correctly
Ion Rosca
Reported 2014-03-24 03:50:34 PDT
Here is the requirement regarding layer acceleration for blend modes: If a layer having blending is accelerated for any reason then its stacking context layer needs to be accelerated too. What happens now: 1) If a blending layer is accelerated, all its RenderLayer ascendants get accelerated. 2) If a non-accelerated layer has an accelerated sibling, then all its ascendants are accelerated.
Attachments
use cases (1.01 KB, text/html)
2014-03-24 03:51 PDT, Ion Rosca
no flags
patch v1 (15.12 KB, patch)
2014-03-24 12:08 PDT, Ion Rosca
no flags
add ifdef to blending code, nits (16.16 KB, patch)
2014-03-31 07:52 PDT, Ion Rosca
no flags
more comments and ifdefs (16.20 KB, patch)
2014-03-31 14:19 PDT, Ion Rosca
no flags
Ion Rosca
Comment 1 2014-03-24 03:51:22 PDT
Created attachment 227636 [details] use cases
Ion Rosca
Comment 2 2014-03-24 12:08:22 PDT
Created attachment 227676 [details] patch v1
Ion Rosca
Comment 3 2014-03-31 07:52:56 PDT
Created attachment 228178 [details] add ifdef to blending code, nits
Mihnea Ovidenie
Comment 4 2014-03-31 10:34:02 PDT
Comment on attachment 228178 [details] add ifdef to blending code, nits View in context: https://bugs.webkit.org/attachment.cgi?id=228178&action=review > Source/WebCore/ChangeLog:13 > + being the closest stacking context should be accelerated as well. Probably this can be rewritten: "if a layer having blend mode is composited, its closest stacking context ancestor should be composited as well" > Source/WebCore/ChangeLog:23 > + * rendering/RenderLayerCompositor.cpp: You should mention something about the renaming of m_subtreeHasBlending => m_hasUnisolatedCompositedBlendingDescendants in CompositingState. > Source/WebCore/rendering/RenderLayer.h:789 > + bool isolatesCompositedBlending() const In general, i would like to see as much as possible code related to this feature guarded by ENABLE(CSS_COMPOSITING) > Source/WebCore/rendering/RenderLayerCompositor.cpp:-208 > - , m_subtreeHasBlending(other.m_subtreeHasBlending) Maybe you can make these bool bit fields in a follow up patch.
Ion Rosca
Comment 5 2014-03-31 14:19:27 PDT
Created attachment 228203 [details] more comments and ifdefs
WebKit Commit Bot
Comment 6 2014-04-02 00:31:19 PDT
Comment on attachment 228203 [details] more comments and ifdefs Clearing flags on attachment: 228203 Committed r166634: <http://trac.webkit.org/changeset/166634>
WebKit Commit Bot
Comment 7 2014-04-02 00:31:24 PDT
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.