Invalidate all non-composited descendants on fixed-position changes

This patch updates invalidateDisplayItemClientForNonCompositingDescendants
to use LayoutObject::invalidateDisplayItemClients(...) instead of manually
calling invalidateDisplayItemClientOnBacking. These two functions are
deceptively similar but invalidateDisplayItemClients is virtual and
can perform additional invalidations in some subclasses. One example is
LayoutInline which invalidates flow-box children in addition to itself.

This fixes a regression caused by [1] where fixed-pos changes would
only invalidate LayoutObject non-composited descendants and would forget
about its inline text friends.

[1] https://chromium.googlesource.com/chromium/blink/+/0d6c3f0c797a6b26d99487b01aba465caf095a25

BUG=509179

Review URL: https://codereview.chromium.org/1330993002

git-svn-id: svn://svn.chromium.org/blink/trunk@202060 bbb929c8-8fbe-4397-9dbb-9b2b20218538
6 files changed
tree: be1b4adf57065b8a37c3e22fed18e5a6e011d2a1
  1. third_party/