Implement -webkit-box-reflect as a filter.
This separates the notion of having the 'filter' property from having a
"filter-inducing property" (i.e. a CSS property which is implemented as a
filter operation).
Then -webkit-box-reflect is made to be such a property (behind a runtime flag),
so that specifying it adds an additional filter operation which draws a reflection
behind the content. This allows the filter code to be substantially reused, rather
than requiring separate logic to handle reflection, as exists in the current
implementation.
This will likely cause minor rendering changes, but it also fixes some bugs,
simplifies the code (at least, once the legacy code can be removed), and rationalizes
the definition of this property.
Notably not implemented in this patch is support for the mask image
parameter; this will be added in a subsequent patch.
BUG=
436475
Committed:
https://crrev.com/4fc4066e585e2642e2876b1a928cbe0e9c83c2c4
Cr-Commit-Position: refs/heads/master@{#384488}