DescriptionUse LocalStyleChange for :hover/:active not affected by descendants.
Before this change, an element that changes its hover/active state would have
its subtree recalculated even if none of its descendants were affected by that
change in hover/active state.
childrenAffectedByHover/Active will still cause a subtree recalc. The reason
is that elements with that flags set will have selectors of type:
div:hover span { ... }
where a change in the hover state of a div will affect an unknown number of
span elements in its subtree. Elements with affectedByHover/Active and no
childrenAffectedByHover/Active will only match selectors where the :hover or
:active pseudo class is in the rightmost sub-selector. Those can use
LocalStyleChange recalcs since none of the descendants will match affected
selectors.
This CL depends on https://codereview.chromium.org/144963002/
R=esprehn
BUG=337983
Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=166387
Patch Set 1 #Patch Set 2 : Rebased onto newer master. #Patch Set 3 : Changed copyright/license according to PSA. #Patch Set 4 : Rebased. #
Messages
Total messages: 8 (0 generated)
|