Hello,
This CL implements the full grammar for `text-transform` defined in CSS Text 4:
`none | [capitalize | uppercase | lowercase ] || full-width || full-size-kana | math-auto`
https://www.w3.org/TR/css-text-4/#text-transform-property
The implementation is long but reasonably straightforward. It's similar to the implementation of other multi-keyword properties like `text-decoration-line`.
One thing to note is that particular combinations of keywords (e.g. `uppercase full-size-kana`) can change the text length in complex ways. I have added specific logic in `ComputedStyle::ApplyTextTransform` to handle this, as well as a unit test.
Thank you for your feedback.
Best,
Felipe
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Code-Review | +1 |
lgtm
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |
Support multi-keyword values for CSS text-transform
Implement the full CSS Text Level 4 grammar for text-transform:
none | [capitalize | uppercase | lowercase] || full-width
|| full-size-kana | math-auto
https://www.w3.org/TR/css-text-4/#text-transform-property
In particular, this change allows combining case transforms with
'full-width' and/or with 'full-size-kana'.
This functionality is behind the CSSTextTransformMultiKeyword flag.
external/wpt/css/css-text/text-transform/text-transform-multiple-001.html
external/wpt/css/css-text/parsing/text-transform-valid.html
external/wpt/css/css-text/parsing/text-transform-computed.html
| Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. |