[Webkit-unassigned] [Bug 130892] [CSS Blending] Isolation descendant dependent flags are not updated correctly
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Thu Apr 3 00:34:33 PDT 2014
https://bugs.webkit.org/show_bug.cgi?id=130892
--- Comment #11 from Mihnea Ovidenie <mihnea at adobe.com> 2014-04-03 00:34:49 PST ---
(From update of attachment 228385)
View in context: https://bugs.webkit.org/attachment.cgi?id=228385&action=review
> Source/WebCore/ChangeLog:10
> +
You should probably mention that you renamed:
m_hasBlendedElementInChildStackingContext => m_hasUnisolatedBlendingDescendants
m_hasBlendedElementInChildStackingContextStatusDirty => m_hasUnisolatedBlendingDescendantsStatusDirty
> Source/WebCore/rendering/RenderLayer.cpp:190
> + , m_hasUnisolatedBlendingDescendants(false)
With this patch, you have 2 flags tracking isolation: m_hasUnisolatedCompositedBlendingDescendants and m_hasUnisolatedBlendingDescendants. I suggest you should add some assertions checking that if the first is true the second should also be true.
> Source/WebCore/rendering/RenderLayer.cpp:-825
> - if (isComposited())
Why did you remove this check?
> Source/WebCore/rendering/RenderLayer.cpp:1099
> +#endif
I would rewrite the code above to be wrapped in ENABLE(CSS_COMPOSITING):
#if ENABLE(CSS_COMPOSITING)
bool hasUnisolatedBlendingDescendants = false;
#endif
> Source/WebCore/rendering/RenderLayer.cpp:1145
> +#endif
Can these lines be moved above, before:
if (m_hasVisibleDescendant && m_hasSelfPaintingLayerDescendant && m_hasOutOfFlowPositionedDescendant && hasUnisolatedBlendingDescendants)
If so, in the if clause you can use the function you added instead of testing the variable hasUnisolatedBlendingDescendants.
> Source/WebCore/rendering/RenderLayer.cpp:6432
> + if (isStackingContext && parent()) {
1. When is parent() null here?
2. You can rewrite to smth like:
if (parent()) {
if (isstackingContent) { ... }
else { ... }
}
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list