DescriptionRecalc list items for <select> before updating style for the select.
listItems() might get called inside recalcStyle for a <select> which can then
schedule style invalidation sets or leave dirty bits after style recalc.
Instead we should make sure to call recalcListItems() at the start of
recalcStyle for <select> (in willRecalcStyle) so that all selected
<option>'s are updated before we try to update their style.
We also add an early out in Element::pseudoStateChanged so that we don't
schedule any invalidation sets inside recalcStyle which is bad since we'd
never process them. A future patch will add an ASSERT in the style invalidation
system to make sure we never do that another way as well.
BUG=497953
R=ojan@chromium.org
Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=197420
Patch Set 1 #Patch Set 2 : Call recalcListItems directly. #Patch Set 3 : Call recalcListItems directly. #
Total comments: 2
Patch Set 4 : comment text. #Patch Set 5 : comments. #
Messages
Total messages: 11 (5 generated)
|
|||||||||||||||||||||||||||||||||||||