[css-align] Avoid the style Reattach whenever align-items changes.
The align-items property defines the default beahvior of children boxes
with 'auto' values on the align-self property.
Since the spec states that the computed style of these properties must
be resolved, using different values depending on the kind of element, we
have implemented this style resolution using the StyleAdjuster logic.
Because of this approach in the implementation, when the value of the
align-items property changes we have to recalculate the style tree,
because some of the 'auto' values have been resolved already to the
previous value. Hence, we need to trigger again the style resolution
logic, via the StyleAdjustment, which requires the style changes to
force a Reattach.
There are several problems with this approach. One of them are the
excessive number of style and paint invalidations when any of this
alignment properties change. Another problem, which is the one
reported in the bug this patch address, is that it prevents animations
and transitions to be executed when they involve changes in the
alignment properties.
BUG=580070
Review URL: https://codereview.chromium.org/1625993004
Cr-Commit-Position: refs/heads/master@{#372666}
8 files changed