Don't force pseudo element recalc based on pseudo element dirtiness.

If we need to recalculate style for a pseudo element, we forced it
through the StyleRecalcChange passed in, even if the only reason was
that the pseudo element itself was style dirty. The problem with that is
that it would look like an ancestor change made the recalc necessary. If
an ancestor change made it necessary we could not use the optimized base
computed style path for style recalc.

Make sure we only translate kUpdatePseudoElements into kRecalcChildren
and still benefit from base computed style if the incoming
StyleRecalcChange propagation is kNo.

Bug: 988834
Change-Id: Ib2efcd6a932623bfec6226512eb3692418c84928
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1738559
Reviewed-by: Robert Flack <flackr@chromium.org>
Commit-Queue: Rune Lillesveen <futhark@chromium.org>
Cr-Commit-Position: refs/heads/master@{#684390}
4 files changed