Changeset 275199 in webkit
- Timestamp:
- Mar 30, 2021 12:40:46 AM (16 months ago)
- Location:
- trunk
- Files:
-
- 17 edited
-
LayoutTests/imported/w3c/ChangeLog (modified) (1 diff)
-
LayoutTests/imported/w3c/web-platform-tests/css/css-text/animations/text-indent-composition-expected.txt (modified) (1 diff)
-
LayoutTests/imported/w3c/web-platform-tests/css/css-text/animations/text-indent-interpolation-expected.txt (modified) (1 diff)
-
LayoutTests/imported/w3c/web-platform-tests/css/css-text/parsing/text-indent-computed-expected.txt (modified) (1 diff)
-
LayoutTests/imported/w3c/web-platform-tests/css/css-text/parsing/text-indent-valid-expected.txt (modified) (1 diff)
-
Source/WebCore/ChangeLog (modified) (1 diff)
-
Source/WebCore/css/CSSComputedStyleDeclaration.cpp (modified) (1 diff)
-
Source/WebCore/css/CSSValueKeywords.in (modified) (1 diff)
-
Source/WebCore/css/parser/CSSPropertyParser.cpp (modified) (3 diffs)
-
Source/WebCore/layout/inlineformatting/InlineLineBuilder.cpp (modified) (1 diff)
-
Source/WebCore/rendering/line/LineWidth.cpp (modified) (2 diffs)
-
Source/WebCore/rendering/style/RenderStyle.cpp (modified) (1 diff)
-
Source/WebCore/rendering/style/RenderStyle.h (modified) (3 diffs)
-
Source/WebCore/rendering/style/RenderStyleConstants.h (modified) (2 diffs)
-
Source/WebCore/rendering/style/StyleRareInheritedData.cpp (modified) (3 diffs)
-
Source/WebCore/rendering/style/StyleRareInheritedData.h (modified) (1 diff)
-
Source/WebCore/style/StyleBuilderCustom.h (modified) (4 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/imported/w3c/ChangeLog
r275160 r275199 1 2021-03-29 Antoine Quint <graouts@webkit.org> 2 3 Enable "hanging" and "each-line" keywords for the text-indent CSS property 4 https://bugs.webkit.org/show_bug.cgi?id=223851 5 6 Reviewed by Antti Koivisto. 7 8 Mark all tests in the parsing-related tests as PASS results for text-indent. 9 The animation tests will be dealt with in bug 223914. 10 11 * web-platform-tests/css/css-text/animations/text-indent-composition-expected.txt: 12 * web-platform-tests/css/css-text/animations/text-indent-interpolation-expected.txt: 13 * web-platform-tests/css/css-text/parsing/text-indent-computed-expected.txt: 14 * web-platform-tests/css/css-text/parsing/text-indent-valid-expected.txt: 15 1 16 2021-03-28 Antoine Quint <graouts@webkit.org> 2 17 -
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-text/animations/text-indent-composition-expected.txt
r267650 r275199 19 19 FAIL Compositing: property <text-indent> underlying [50%] from replace [-100%] to add [50%] at (1) should be [100%] assert_equals: expected "100 % " but got "50 % " 20 20 FAIL Compositing: property <text-indent> underlying [50%] from replace [-100%] to add [50%] at (1.5) should be [200%] assert_equals: expected "200 % " but got "125 % " 21 FAIL Compositing: property <text-indent> underlying [250px] from add [50px each-line hanging] to replace [150px hanging each-line] at (-0.3) should be [20px hanging each-line] assert_ true: 'from' value should be supported expected true got false22 FAIL Compositing: property <text-indent> underlying [250px] from add [50px each-line hanging] to replace [150px hanging each-line] at (0) should be [50px hanging each-line] assert_ true: 'from' value should be supported expected true got false23 FAIL Compositing: property <text-indent> underlying [250px] from add [50px each-line hanging] to replace [150px hanging each-line] at (0.3) should be [80px hanging each-line] assert_ true: 'from' value should be supported expected true got false24 FAIL Compositing: property <text-indent> underlying [250px] from add [50px each-line hanging] to replace [150px hanging each-line] at (0.6) should be [110px hanging each-line] assert_ true: 'from' value should be supported expected true got false25 FAIL Compositing: property <text-indent> underlying [250px] from add [50px each-line hanging] to replace [150px hanging each-line] at (1) should be [150px hanging each-line] assert_ true: 'from' value should be supported expected true got false26 FAIL Compositing: property <text-indent> underlying [250px] from add [50px each-line hanging] to replace [150px hanging each-line] at (1.5) should be [200px hanging each-line] assert_ true: 'from' value should be supported expected true got false27 FAIL Compositing: property <text-indent> underlying [250px each-line] from add [50px each-line] to replace [150px hanging] at (-0.3) should be [300px each-line] assert_ true: 'from' value should be supported expected true got false28 FAIL Compositing: property <text-indent> underlying [250px each-line] from add [50px each-line] to replace [150px hanging] at (0) should be [300px each-line] assert_ true: 'from' value should be supported expected true got false29 FAIL Compositing: property <text-indent> underlying [250px each-line] from add [50px each-line] to replace [150px hanging] at (0.3) should be [300px each-line] assert_ true: 'from' value should be supported expected true got false30 FAIL Compositing: property <text-indent> underlying [250px each-line] from add [50px each-line] to replace [150px hanging] at (0.6) should be [150px hanging] assert_ true: 'from' value should be supported expected true got false31 FAIL Compositing: property <text-indent> underlying [250px each-line] from add [50px each-line] to replace [150px hanging] at (1) should be [150px hanging] assert_ true: 'from' value should be supported expected true got false32 FAIL Compositing: property <text-indent> underlying [250px each-line] from add [50px each-line] to replace [150px hanging] at (1.5) should be [150px hanging] assert_ true: 'from' value should be supported expected true got false21 FAIL Compositing: property <text-indent> underlying [250px] from add [50px each-line hanging] to replace [150px hanging each-line] at (-0.3) should be [20px hanging each-line] assert_equals: expected "20px hanging each - line " but got "20px " 22 FAIL Compositing: property <text-indent> underlying [250px] from add [50px each-line hanging] to replace [150px hanging each-line] at (0) should be [50px hanging each-line] assert_equals: expected "50px hanging each - line " but got "50px " 23 FAIL Compositing: property <text-indent> underlying [250px] from add [50px each-line hanging] to replace [150px hanging each-line] at (0.3) should be [80px hanging each-line] assert_equals: expected "80px hanging each - line " but got "80px " 24 FAIL Compositing: property <text-indent> underlying [250px] from add [50px each-line hanging] to replace [150px hanging each-line] at (0.6) should be [110px hanging each-line] assert_equals: expected "110px hanging each - line " but got "110px " 25 FAIL Compositing: property <text-indent> underlying [250px] from add [50px each-line hanging] to replace [150px hanging each-line] at (1) should be [150px hanging each-line] assert_equals: expected "150px hanging each - line " but got "150px " 26 FAIL Compositing: property <text-indent> underlying [250px] from add [50px each-line hanging] to replace [150px hanging each-line] at (1.5) should be [200px hanging each-line] assert_equals: expected "200px hanging each - line " but got "200px " 27 FAIL Compositing: property <text-indent> underlying [250px each-line] from add [50px each-line] to replace [150px hanging] at (-0.3) should be [300px each-line] assert_equals: expected "300px each - line " but got "20px each - line " 28 FAIL Compositing: property <text-indent> underlying [250px each-line] from add [50px each-line] to replace [150px hanging] at (0) should be [300px each-line] assert_equals: expected "300px each - line " but got "50px each - line " 29 FAIL Compositing: property <text-indent> underlying [250px each-line] from add [50px each-line] to replace [150px hanging] at (0.3) should be [300px each-line] assert_equals: expected "300px each - line " but got "80px each - line " 30 FAIL Compositing: property <text-indent> underlying [250px each-line] from add [50px each-line] to replace [150px hanging] at (0.6) should be [150px hanging] assert_equals: expected "150px hanging " but got "110px each - line " 31 FAIL Compositing: property <text-indent> underlying [250px each-line] from add [50px each-line] to replace [150px hanging] at (1) should be [150px hanging] assert_equals: expected "150px hanging " but got "150px each - line " 32 FAIL Compositing: property <text-indent> underlying [250px each-line] from add [50px each-line] to replace [150px hanging] at (1.5) should be [150px hanging] assert_equals: expected "150px hanging " but got "200px each - line " 33 33 -
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-text/animations/text-indent-interpolation-expected.txt
r272904 r275199 132 132 PASS CSS Transitions with transition: all: property <text-indent> from [0px hanging] to [50px hanging] at (1) should be [50px hanging] 133 133 PASS CSS Transitions with transition: all: property <text-indent> from [0px hanging] to [50px hanging] at (1.5) should be [75px hanging] 134 PASS CSS Animations: property <text-indent> from [0px hanging] to [50px hanging] at (-0.3) should be [-15px hanging] 135 PASS CSS Animations: property <text-indent> from [0px hanging] to [50px hanging] at (0) should be [0 hanging] 136 PASS CSS Animations: property <text-indent> from [0px hanging] to [50px hanging] at (0.3) should be [15px hanging] 137 PASS CSS Animations: property <text-indent> from [0px hanging] to [50px hanging] at (0.6) should be [30px hanging] 138 PASS CSS Animations: property <text-indent> from [0px hanging] to [50px hanging] at (1) should be [50px hanging] 139 PASS CSS Animations: property <text-indent> from [0px hanging] to [50px hanging] at (1.5) should be [75px hanging] 140 PASS Web Animations: property <text-indent> from [0px hanging] to [50px hanging] at (-0.3) should be [-15px hanging] 141 PASS Web Animations: property <text-indent> from [0px hanging] to [50px hanging] at (0) should be [0 hanging] 142 PASS Web Animations: property <text-indent> from [0px hanging] to [50px hanging] at (0.3) should be [15px hanging] 143 PASS Web Animations: property <text-indent> from [0px hanging] to [50px hanging] at (0.6) should be [30px hanging] 144 PASS Web Animations: property <text-indent> from [0px hanging] to [50px hanging] at (1) should be [50px hanging] 145 PASS Web Animations: property <text-indent> from [0px hanging] to [50px hanging] at (1.5) should be [75px hanging] 146 FAIL CSS Transitions: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (-0.3) should be [-15px hanging each-line] assert_true: 'from' value should be supported expected true got false 147 FAIL CSS Transitions: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (0) should be [0 hanging each-line] assert_true: 'from' value should be supported expected true got false 148 FAIL CSS Transitions: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (0.3) should be [15px hanging each-line] assert_true: 'from' value should be supported expected true got false 149 FAIL CSS Transitions: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (0.6) should be [30px hanging each-line] assert_true: 'from' value should be supported expected true got false 150 FAIL CSS Transitions: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (1) should be [50px hanging each-line] assert_true: 'from' value should be supported expected true got false 151 FAIL CSS Transitions: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (1.5) should be [75px hanging each-line] assert_true: 'from' value should be supported expected true got false 152 FAIL CSS Transitions with transition: all: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (-0.3) should be [-15px hanging each-line] assert_true: 'from' value should be supported expected true got false 153 FAIL CSS Transitions with transition: all: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (0) should be [0 hanging each-line] assert_true: 'from' value should be supported expected true got false 154 FAIL CSS Transitions with transition: all: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (0.3) should be [15px hanging each-line] assert_true: 'from' value should be supported expected true got false 155 FAIL CSS Transitions with transition: all: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (0.6) should be [30px hanging each-line] assert_true: 'from' value should be supported expected true got false 156 FAIL CSS Transitions with transition: all: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (1) should be [50px hanging each-line] assert_true: 'from' value should be supported expected true got false 157 FAIL CSS Transitions with transition: all: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (1.5) should be [75px hanging each-line] assert_true: 'from' value should be supported expected true got false 158 FAIL CSS Animations: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (-0.3) should be [-15px hanging each-line] assert_ true: 'from' value should be supported expected true got false159 FAIL CSS Animations: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (0) should be [0 hanging each-line] assert_ true: 'from' value should be supported expected true got false160 FAIL CSS Animations: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (0.3) should be [15px hanging each-line] assert_ true: 'from' value should be supported expected true got false161 FAIL CSS Animations: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (0.6) should be [30px hanging each-line] assert_ true: 'from' value should be supported expected true got false162 FAIL CSS Animations: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (1) should be [50px hanging each-line] assert_ true: 'from' value should be supported expected true got false163 FAIL CSS Animations: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (1.5) should be [75px hanging each-line] assert_ true: 'from' value should be supported expected true got false164 FAIL Web Animations: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (-0.3) should be [-15px hanging each-line] assert_ true: 'from' value should be supported expected true got false165 FAIL Web Animations: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (0) should be [0 hanging each-line] assert_ true: 'from' value should be supported expected true got false166 FAIL Web Animations: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (0.3) should be [15px hanging each-line] assert_ true: 'from' value should be supported expected true got false167 FAIL Web Animations: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (0.6) should be [30px hanging each-line] assert_ true: 'from' value should be supported expected true got false168 FAIL Web Animations: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (1) should be [50px hanging each-line] assert_ true: 'from' value should be supported expected true got false169 FAIL Web Animations: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (1.5) should be [75px hanging each-line] assert_ true: 'from' value should be supported expected true got false170 FAIL CSS Transitions: property <text-indent> from [0px each-line] to [50px hanging] at (-0.3) should be [50px hanging] assert_ true: 'from' value should be supported expected true got false171 FAIL CSS Transitions: property <text-indent> from [0px each-line] to [50px hanging] at (0) should be [50px hanging] assert_ true: 'from' value should be supported expected true got false172 FAIL CSS Transitions: property <text-indent> from [0px each-line] to [50px hanging] at (0.3) should be [50px hanging] assert_ true: 'from' value should be supported expected true got false173 FAIL CSS Transitions: property <text-indent> from [0px each-line] to [50px hanging] at (0.5) should be [50px hanging] assert_ true: 'from' value should be supported expected true got false174 FAIL CSS Transitions: property <text-indent> from [0px each-line] to [50px hanging] at (0.6) should be [50px hanging] assert_ true: 'from' value should be supported expected true got false175 FAIL CSS Transitions: property <text-indent> from [0px each-line] to [50px hanging] at (1) should be [50px hanging] assert_true: 'from' value should be supported expected true got false 176 FAIL CSS Transitions: property <text-indent> from [0px each-line] to [50px hanging] at (1.5) should be [50px hanging] assert_ true: 'from' value should be supported expected true got false177 FAIL CSS Transitions with transition: all: property <text-indent> from [0px each-line] to [50px hanging] at (-0.3) should be [50px hanging] assert_ true: 'from' value should be supported expected true got false178 FAIL CSS Transitions with transition: all: property <text-indent> from [0px each-line] to [50px hanging] at (0) should be [50px hanging] assert_ true: 'from' value should be supported expected true got false179 FAIL CSS Transitions with transition: all: property <text-indent> from [0px each-line] to [50px hanging] at (0.3) should be [50px hanging] assert_ true: 'from' value should be supported expected true got false180 FAIL CSS Transitions with transition: all: property <text-indent> from [0px each-line] to [50px hanging] at (0.5) should be [50px hanging] assert_ true: 'from' value should be supported expected true got false181 FAIL CSS Transitions with transition: all: property <text-indent> from [0px each-line] to [50px hanging] at (0.6) should be [50px hanging] assert_ true: 'from' value should be supported expected true got false182 FAIL CSS Transitions with transition: all: property <text-indent> from [0px each-line] to [50px hanging] at (1) should be [50px hanging] assert_true: 'from' value should be supported expected true got false 183 FAIL CSS Transitions with transition: all: property <text-indent> from [0px each-line] to [50px hanging] at (1.5) should be [50px hanging] assert_ true: 'from' value should be supported expected true got false184 FAIL CSS Animations: property <text-indent> from [0px each-line] to [50px hanging] at (-0.3) should be [0px each-line] assert_ true: 'from' value should be supported expected true got false185 FAIL CSS Animations: property <text-indent> from [0px each-line] to [50px hanging] at (0) should be [0px each-line] assert_ true: 'from' value should be supported expected true got false186 FAIL CSS Animations: property <text-indent> from [0px each-line] to [50px hanging] at (0.3) should be [0px each-line] assert_ true: 'from' value should be supported expected true got false187 FAIL CSS Animations: property <text-indent> from [0px each-line] to [50px hanging] at (0.5) should be [50px hanging] assert_ true: 'from' value should be supported expected true got false188 FAIL CSS Animations: property <text-indent> from [0px each-line] to [50px hanging] at (0.6) should be [50px hanging] assert_ true: 'from' value should be supported expected true got false189 FAIL CSS Animations: property <text-indent> from [0px each-line] to [50px hanging] at (1) should be [50px hanging] assert_ true: 'from' value should be supported expected true got false190 FAIL CSS Animations: property <text-indent> from [0px each-line] to [50px hanging] at (1.5) should be [50px hanging] assert_ true: 'from' value should be supported expected true got false191 FAIL Web Animations: property <text-indent> from [0px each-line] to [50px hanging] at (-0.3) should be [0px each-line] assert_ true: 'from' value should be supported expected true got false192 FAIL Web Animations: property <text-indent> from [0px each-line] to [50px hanging] at (0) should be [0px each-line] assert_ true: 'from' value should be supported expected true got false193 FAIL Web Animations: property <text-indent> from [0px each-line] to [50px hanging] at (0.3) should be [0px each-line] assert_ true: 'from' value should be supported expected true got false194 FAIL Web Animations: property <text-indent> from [0px each-line] to [50px hanging] at (0.5) should be [50px hanging] assert_ true: 'from' value should be supported expected true got false195 FAIL Web Animations: property <text-indent> from [0px each-line] to [50px hanging] at (0.6) should be [50px hanging] assert_ true: 'from' value should be supported expected true got false196 FAIL Web Animations: property <text-indent> from [0px each-line] to [50px hanging] at (1) should be [50px hanging] assert_ true: 'from' value should be supported expected true got false197 FAIL Web Animations: property <text-indent> from [0px each-line] to [50px hanging] at (1.5) should be [50px hanging] assert_ true: 'from' value should be supported expected true got false198 FAIL CSS Transitions: property <text-indent> from [0px] to [50px each-line hanging] at (-0.3) should be [50px each-line hanging] assert_ true: 'to' value should be supported expected true got false199 FAIL CSS Transitions: property <text-indent> from [0px] to [50px each-line hanging] at (0) should be [50px each-line hanging] assert_ true: 'to' value should be supported expected true got false200 FAIL CSS Transitions: property <text-indent> from [0px] to [50px each-line hanging] at (0.3) should be [50px each-line hanging] assert_ true: 'to' value should be supported expected true got false201 FAIL CSS Transitions: property <text-indent> from [0px] to [50px each-line hanging] at (0.5) should be [50px each-line hanging] assert_ true: 'to' value should be supported expected true got false202 FAIL CSS Transitions: property <text-indent> from [0px] to [50px each-line hanging] at (0.6) should be [50px each-line hanging] assert_ true: 'to' value should be supported expected true got false203 FAIL CSS Transitions: property <text-indent> from [0px] to [50px each-line hanging] at (1) should be [50px each-line hanging] assert_true: 'to' value should be supported expected true got false 204 FAIL CSS Transitions: property <text-indent> from [0px] to [50px each-line hanging] at (1.5) should be [50px each-line hanging] assert_ true: 'to' value should be supported expected true got false205 FAIL CSS Transitions with transition: all: property <text-indent> from [0px] to [50px each-line hanging] at (-0.3) should be [50px each-line hanging] assert_ true: 'to' value should be supported expected true got false206 FAIL CSS Transitions with transition: all: property <text-indent> from [0px] to [50px each-line hanging] at (0) should be [50px each-line hanging] assert_ true: 'to' value should be supported expected true got false207 FAIL CSS Transitions with transition: all: property <text-indent> from [0px] to [50px each-line hanging] at (0.3) should be [50px each-line hanging] assert_ true: 'to' value should be supported expected true got false208 FAIL CSS Transitions with transition: all: property <text-indent> from [0px] to [50px each-line hanging] at (0.5) should be [50px each-line hanging] assert_ true: 'to' value should be supported expected true got false209 FAIL CSS Transitions with transition: all: property <text-indent> from [0px] to [50px each-line hanging] at (0.6) should be [50px each-line hanging] assert_ true: 'to' value should be supported expected true got false210 FAIL CSS Transitions with transition: all: property <text-indent> from [0px] to [50px each-line hanging] at (1) should be [50px each-line hanging] assert_true: 'to' value should be supported expected true got false 211 FAIL CSS Transitions with transition: all: property <text-indent> from [0px] to [50px each-line hanging] at (1.5) should be [50px each-line hanging] assert_ true: 'to' value should be supported expected true got false212 FAIL CSS Animations: property <text-indent> from [0px] to [50px each-line hanging] at (-0.3) should be [0px] assert_ true: 'to' value should be supported expected true got false213 FAIL CSS Animations: property <text-indent> from [0px] to [50px each-line hanging] at (0) should be [0px] assert_true: 'to' value should be supported expected true got false 214 FAIL CSS Animations: property <text-indent> from [0px] to [50px each-line hanging] at (0.3) should be [0px] assert_ true: 'to' value should be supported expected true got false215 FAIL CSS Animations: property <text-indent> from [0px] to [50px each-line hanging] at (0.5) should be [50px each-line hanging] assert_ true: 'to' value should be supported expected true got false216 FAIL CSS Animations: property <text-indent> from [0px] to [50px each-line hanging] at (0.6) should be [50px each-line hanging] assert_ true: 'to' value should be supported expected true got false217 FAIL CSS Animations: property <text-indent> from [0px] to [50px each-line hanging] at (1) should be [50px each-line hanging] assert_ true: 'to' value should be supported expected true got false218 FAIL CSS Animations: property <text-indent> from [0px] to [50px each-line hanging] at (1.5) should be [50px each-line hanging] assert_ true: 'to' value should be supported expected true got false219 FAIL Web Animations: property <text-indent> from [0px] to [50px each-line hanging] at (-0.3) should be [0px] assert_ true: 'to' value should be supported expected true got false220 FAIL Web Animations: property <text-indent> from [0px] to [50px each-line hanging] at (0) should be [0px] assert_true: 'to' value should be supported expected true got false 221 FAIL Web Animations: property <text-indent> from [0px] to [50px each-line hanging] at (0.3) should be [0px] assert_ true: 'to' value should be supported expected true got false222 FAIL Web Animations: property <text-indent> from [0px] to [50px each-line hanging] at (0.5) should be [50px each-line hanging] assert_ true: 'to' value should be supported expected true got false223 FAIL Web Animations: property <text-indent> from [0px] to [50px each-line hanging] at (0.6) should be [50px each-line hanging] assert_ true: 'to' value should be supported expected true got false224 FAIL Web Animations: property <text-indent> from [0px] to [50px each-line hanging] at (1) should be [50px each-line hanging] assert_ true: 'to' value should be supported expected true got false225 FAIL Web Animations: property <text-indent> from [0px] to [50px each-line hanging] at (1.5) should be [50px each-line hanging] assert_ true: 'to' value should be supported expected true got false134 FAIL CSS Animations: property <text-indent> from [0px hanging] to [50px hanging] at (-0.3) should be [-15px hanging] assert_equals: expected "- 15px hanging " but got "- 15px " 135 FAIL CSS Animations: property <text-indent> from [0px hanging] to [50px hanging] at (0) should be [0 hanging] assert_equals: expected "0px hanging " but got "0px " 136 FAIL CSS Animations: property <text-indent> from [0px hanging] to [50px hanging] at (0.3) should be [15px hanging] assert_equals: expected "15px hanging " but got "15px " 137 FAIL CSS Animations: property <text-indent> from [0px hanging] to [50px hanging] at (0.6) should be [30px hanging] assert_equals: expected "30px hanging " but got "30px " 138 FAIL CSS Animations: property <text-indent> from [0px hanging] to [50px hanging] at (1) should be [50px hanging] assert_equals: expected "50px hanging " but got "50px " 139 FAIL CSS Animations: property <text-indent> from [0px hanging] to [50px hanging] at (1.5) should be [75px hanging] assert_equals: expected "75px hanging " but got "75px " 140 FAIL Web Animations: property <text-indent> from [0px hanging] to [50px hanging] at (-0.3) should be [-15px hanging] assert_equals: expected "- 15px hanging " but got "- 15px " 141 FAIL Web Animations: property <text-indent> from [0px hanging] to [50px hanging] at (0) should be [0 hanging] assert_equals: expected "0px hanging " but got "0px " 142 FAIL Web Animations: property <text-indent> from [0px hanging] to [50px hanging] at (0.3) should be [15px hanging] assert_equals: expected "15px hanging " but got "15px " 143 FAIL Web Animations: property <text-indent> from [0px hanging] to [50px hanging] at (0.6) should be [30px hanging] assert_equals: expected "30px hanging " but got "30px " 144 FAIL Web Animations: property <text-indent> from [0px hanging] to [50px hanging] at (1) should be [50px hanging] assert_equals: expected "50px hanging " but got "50px " 145 FAIL Web Animations: property <text-indent> from [0px hanging] to [50px hanging] at (1.5) should be [75px hanging] assert_equals: expected "75px hanging " but got "75px " 146 PASS CSS Transitions: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (-0.3) should be [-15px hanging each-line] 147 PASS CSS Transitions: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (0) should be [0 hanging each-line] 148 PASS CSS Transitions: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (0.3) should be [15px hanging each-line] 149 PASS CSS Transitions: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (0.6) should be [30px hanging each-line] 150 PASS CSS Transitions: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (1) should be [50px hanging each-line] 151 PASS CSS Transitions: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (1.5) should be [75px hanging each-line] 152 PASS CSS Transitions with transition: all: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (-0.3) should be [-15px hanging each-line] 153 PASS CSS Transitions with transition: all: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (0) should be [0 hanging each-line] 154 PASS CSS Transitions with transition: all: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (0.3) should be [15px hanging each-line] 155 PASS CSS Transitions with transition: all: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (0.6) should be [30px hanging each-line] 156 PASS CSS Transitions with transition: all: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (1) should be [50px hanging each-line] 157 PASS CSS Transitions with transition: all: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (1.5) should be [75px hanging each-line] 158 FAIL CSS Animations: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (-0.3) should be [-15px hanging each-line] assert_equals: expected "- 15px hanging each - line " but got "- 15px " 159 FAIL CSS Animations: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (0) should be [0 hanging each-line] assert_equals: expected "0px hanging each - line " but got "0px " 160 FAIL CSS Animations: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (0.3) should be [15px hanging each-line] assert_equals: expected "15px hanging each - line " but got "15px " 161 FAIL CSS Animations: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (0.6) should be [30px hanging each-line] assert_equals: expected "30px hanging each - line " but got "30px " 162 FAIL CSS Animations: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (1) should be [50px hanging each-line] assert_equals: expected "50px hanging each - line " but got "50px " 163 FAIL CSS Animations: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (1.5) should be [75px hanging each-line] assert_equals: expected "75px hanging each - line " but got "75px " 164 FAIL Web Animations: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (-0.3) should be [-15px hanging each-line] assert_equals: expected "- 15px hanging each - line " but got "- 15px " 165 FAIL Web Animations: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (0) should be [0 hanging each-line] assert_equals: expected "0px hanging each - line " but got "0px " 166 FAIL Web Animations: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (0.3) should be [15px hanging each-line] assert_equals: expected "15px hanging each - line " but got "15px " 167 FAIL Web Animations: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (0.6) should be [30px hanging each-line] assert_equals: expected "30px hanging each - line " but got "30px " 168 FAIL Web Animations: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (1) should be [50px hanging each-line] assert_equals: expected "50px hanging each - line " but got "50px " 169 FAIL Web Animations: property <text-indent> from [0px hanging each-line] to [50px each-line hanging] at (1.5) should be [75px hanging each-line] assert_equals: expected "75px hanging each - line " but got "75px " 170 FAIL CSS Transitions: property <text-indent> from [0px each-line] to [50px hanging] at (-0.3) should be [50px hanging] assert_equals: expected "50px hanging " but got "- 15px hanging " 171 FAIL CSS Transitions: property <text-indent> from [0px each-line] to [50px hanging] at (0) should be [50px hanging] assert_equals: expected "50px hanging " but got "0px hanging " 172 FAIL CSS Transitions: property <text-indent> from [0px each-line] to [50px hanging] at (0.3) should be [50px hanging] assert_equals: expected "50px hanging " but got "15px hanging " 173 FAIL CSS Transitions: property <text-indent> from [0px each-line] to [50px hanging] at (0.5) should be [50px hanging] assert_equals: expected "50px hanging " but got "25px hanging " 174 FAIL CSS Transitions: property <text-indent> from [0px each-line] to [50px hanging] at (0.6) should be [50px hanging] assert_equals: expected "50px hanging " but got "30px hanging " 175 PASS CSS Transitions: property <text-indent> from [0px each-line] to [50px hanging] at (1) should be [50px hanging] 176 FAIL CSS Transitions: property <text-indent> from [0px each-line] to [50px hanging] at (1.5) should be [50px hanging] assert_equals: expected "50px hanging " but got "75px hanging " 177 FAIL CSS Transitions with transition: all: property <text-indent> from [0px each-line] to [50px hanging] at (-0.3) should be [50px hanging] assert_equals: expected "50px hanging " but got "- 15px hanging " 178 FAIL CSS Transitions with transition: all: property <text-indent> from [0px each-line] to [50px hanging] at (0) should be [50px hanging] assert_equals: expected "50px hanging " but got "0px hanging " 179 FAIL CSS Transitions with transition: all: property <text-indent> from [0px each-line] to [50px hanging] at (0.3) should be [50px hanging] assert_equals: expected "50px hanging " but got "15px hanging " 180 FAIL CSS Transitions with transition: all: property <text-indent> from [0px each-line] to [50px hanging] at (0.5) should be [50px hanging] assert_equals: expected "50px hanging " but got "25px hanging " 181 FAIL CSS Transitions with transition: all: property <text-indent> from [0px each-line] to [50px hanging] at (0.6) should be [50px hanging] assert_equals: expected "50px hanging " but got "30px hanging " 182 PASS CSS Transitions with transition: all: property <text-indent> from [0px each-line] to [50px hanging] at (1) should be [50px hanging] 183 FAIL CSS Transitions with transition: all: property <text-indent> from [0px each-line] to [50px hanging] at (1.5) should be [50px hanging] assert_equals: expected "50px hanging " but got "75px hanging " 184 FAIL CSS Animations: property <text-indent> from [0px each-line] to [50px hanging] at (-0.3) should be [0px each-line] assert_equals: expected "0px each - line " but got "- 15px " 185 FAIL CSS Animations: property <text-indent> from [0px each-line] to [50px hanging] at (0) should be [0px each-line] assert_equals: expected "0px each - line " but got "0px " 186 FAIL CSS Animations: property <text-indent> from [0px each-line] to [50px hanging] at (0.3) should be [0px each-line] assert_equals: expected "0px each - line " but got "15px " 187 FAIL CSS Animations: property <text-indent> from [0px each-line] to [50px hanging] at (0.5) should be [50px hanging] assert_equals: expected "50px hanging " but got "25px " 188 FAIL CSS Animations: property <text-indent> from [0px each-line] to [50px hanging] at (0.6) should be [50px hanging] assert_equals: expected "50px hanging " but got "30px " 189 FAIL CSS Animations: property <text-indent> from [0px each-line] to [50px hanging] at (1) should be [50px hanging] assert_equals: expected "50px hanging " but got "50px " 190 FAIL CSS Animations: property <text-indent> from [0px each-line] to [50px hanging] at (1.5) should be [50px hanging] assert_equals: expected "50px hanging " but got "75px " 191 FAIL Web Animations: property <text-indent> from [0px each-line] to [50px hanging] at (-0.3) should be [0px each-line] assert_equals: expected "0px each - line " but got "- 15px " 192 FAIL Web Animations: property <text-indent> from [0px each-line] to [50px hanging] at (0) should be [0px each-line] assert_equals: expected "0px each - line " but got "0px " 193 FAIL Web Animations: property <text-indent> from [0px each-line] to [50px hanging] at (0.3) should be [0px each-line] assert_equals: expected "0px each - line " but got "15px " 194 FAIL Web Animations: property <text-indent> from [0px each-line] to [50px hanging] at (0.5) should be [50px hanging] assert_equals: expected "50px hanging " but got "25px " 195 FAIL Web Animations: property <text-indent> from [0px each-line] to [50px hanging] at (0.6) should be [50px hanging] assert_equals: expected "50px hanging " but got "30px " 196 FAIL Web Animations: property <text-indent> from [0px each-line] to [50px hanging] at (1) should be [50px hanging] assert_equals: expected "50px hanging " but got "50px " 197 FAIL Web Animations: property <text-indent> from [0px each-line] to [50px hanging] at (1.5) should be [50px hanging] assert_equals: expected "50px hanging " but got "75px " 198 FAIL CSS Transitions: property <text-indent> from [0px] to [50px each-line hanging] at (-0.3) should be [50px each-line hanging] assert_equals: expected "50px hanging each - line " but got "- 15px hanging each - line " 199 FAIL CSS Transitions: property <text-indent> from [0px] to [50px each-line hanging] at (0) should be [50px each-line hanging] assert_equals: expected "50px hanging each - line " but got "0px hanging each - line " 200 FAIL CSS Transitions: property <text-indent> from [0px] to [50px each-line hanging] at (0.3) should be [50px each-line hanging] assert_equals: expected "50px hanging each - line " but got "15px hanging each - line " 201 FAIL CSS Transitions: property <text-indent> from [0px] to [50px each-line hanging] at (0.5) should be [50px each-line hanging] assert_equals: expected "50px hanging each - line " but got "25px hanging each - line " 202 FAIL CSS Transitions: property <text-indent> from [0px] to [50px each-line hanging] at (0.6) should be [50px each-line hanging] assert_equals: expected "50px hanging each - line " but got "30px hanging each - line " 203 PASS CSS Transitions: property <text-indent> from [0px] to [50px each-line hanging] at (1) should be [50px each-line hanging] 204 FAIL CSS Transitions: property <text-indent> from [0px] to [50px each-line hanging] at (1.5) should be [50px each-line hanging] assert_equals: expected "50px hanging each - line " but got "75px hanging each - line " 205 FAIL CSS Transitions with transition: all: property <text-indent> from [0px] to [50px each-line hanging] at (-0.3) should be [50px each-line hanging] assert_equals: expected "50px hanging each - line " but got "- 15px hanging each - line " 206 FAIL CSS Transitions with transition: all: property <text-indent> from [0px] to [50px each-line hanging] at (0) should be [50px each-line hanging] assert_equals: expected "50px hanging each - line " but got "0px hanging each - line " 207 FAIL CSS Transitions with transition: all: property <text-indent> from [0px] to [50px each-line hanging] at (0.3) should be [50px each-line hanging] assert_equals: expected "50px hanging each - line " but got "15px hanging each - line " 208 FAIL CSS Transitions with transition: all: property <text-indent> from [0px] to [50px each-line hanging] at (0.5) should be [50px each-line hanging] assert_equals: expected "50px hanging each - line " but got "25px hanging each - line " 209 FAIL CSS Transitions with transition: all: property <text-indent> from [0px] to [50px each-line hanging] at (0.6) should be [50px each-line hanging] assert_equals: expected "50px hanging each - line " but got "30px hanging each - line " 210 PASS CSS Transitions with transition: all: property <text-indent> from [0px] to [50px each-line hanging] at (1) should be [50px each-line hanging] 211 FAIL CSS Transitions with transition: all: property <text-indent> from [0px] to [50px each-line hanging] at (1.5) should be [50px each-line hanging] assert_equals: expected "50px hanging each - line " but got "75px hanging each - line " 212 FAIL CSS Animations: property <text-indent> from [0px] to [50px each-line hanging] at (-0.3) should be [0px] assert_equals: expected "0px " but got "- 15px " 213 PASS CSS Animations: property <text-indent> from [0px] to [50px each-line hanging] at (0) should be [0px] 214 FAIL CSS Animations: property <text-indent> from [0px] to [50px each-line hanging] at (0.3) should be [0px] assert_equals: expected "0px " but got "15px " 215 FAIL CSS Animations: property <text-indent> from [0px] to [50px each-line hanging] at (0.5) should be [50px each-line hanging] assert_equals: expected "50px hanging each - line " but got "25px " 216 FAIL CSS Animations: property <text-indent> from [0px] to [50px each-line hanging] at (0.6) should be [50px each-line hanging] assert_equals: expected "50px hanging each - line " but got "30px " 217 FAIL CSS Animations: property <text-indent> from [0px] to [50px each-line hanging] at (1) should be [50px each-line hanging] assert_equals: expected "50px hanging each - line " but got "50px " 218 FAIL CSS Animations: property <text-indent> from [0px] to [50px each-line hanging] at (1.5) should be [50px each-line hanging] assert_equals: expected "50px hanging each - line " but got "75px " 219 FAIL Web Animations: property <text-indent> from [0px] to [50px each-line hanging] at (-0.3) should be [0px] assert_equals: expected "0px " but got "- 15px " 220 PASS Web Animations: property <text-indent> from [0px] to [50px each-line hanging] at (0) should be [0px] 221 FAIL Web Animations: property <text-indent> from [0px] to [50px each-line hanging] at (0.3) should be [0px] assert_equals: expected "0px " but got "15px " 222 FAIL Web Animations: property <text-indent> from [0px] to [50px each-line hanging] at (0.5) should be [50px each-line hanging] assert_equals: expected "50px hanging each - line " but got "25px " 223 FAIL Web Animations: property <text-indent> from [0px] to [50px each-line hanging] at (0.6) should be [50px each-line hanging] assert_equals: expected "50px hanging each - line " but got "30px " 224 FAIL Web Animations: property <text-indent> from [0px] to [50px each-line hanging] at (1) should be [50px each-line hanging] assert_equals: expected "50px hanging each - line " but got "50px " 225 FAIL Web Animations: property <text-indent> from [0px] to [50px each-line hanging] at (1.5) should be [50px each-line hanging] assert_equals: expected "50px hanging each - line " but got "75px " 226 226 -
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-text/parsing/text-indent-computed-expected.txt
r267650 r275199 6 6 PASS Property text-indent value '-40%' 7 7 PASS Property text-indent value 'calc(10px - 0.5em)' 8 FAIL Property text-indent value '10px hanging' assert_equals: expected "10px hanging" but got "10px" 9 FAIL Property text-indent value '20% each-line' assert_true: '20% each-line' is a supported value for text-indent. expected true got false 10 FAIL Property text-indent value 'calc(50% + 60px) hanging each-line' assert_true: 'calc(50% + 60px) hanging each-line' is a supported value for text-indent. expected true got false 11 FAIL Property text-indent value 'each-line hanging calc(10px + 0.5em)' assert_true: 'each-line hanging calc(10px + 0.5em)' is a supported value for text-indent. expected true got false 8 PASS Property text-indent value '10px hanging' 9 PASS Property text-indent value '20% each-line' 10 PASS Property text-indent value 'calc(50% + 60px) hanging each-line' 11 PASS Property text-indent value 'each-line hanging calc(10px + 0.5em)' 12 12 -
trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-text/parsing/text-indent-valid-expected.txt
r267650 r275199 7 7 PASS e.style['text-indent'] = "-40%" should set the property value 8 8 PASS e.style['text-indent'] = "10px hanging" should set the property value 9 FAIL e.style['text-indent'] = "20% each-line" should set the property value assert_not_equals: property should be set got disallowed value "" 10 FAIL e.style['text-indent'] = "calc(2em + 3ex) hanging each-line" should set the property value assert_not_equals: property should be set got disallowed value "" 11 FAIL e.style['text-indent'] = "hanging calc(50% + 60px)" should set the property value assert_equals: serialization should be canonical expected "calc(50% + 60px) hanging" but got "hanging calc(50% + 60px)" 12 FAIL e.style['text-indent'] = "each-line 10px" should set the property value assert_not_equals: property should be set got disallowed value "" 13 FAIL e.style['text-indent'] = "hanging 20% each-line" should set the property value assert_not_equals: property should be set got disallowed value "" 14 FAIL e.style['text-indent'] = "each-line hanging calc(2em + 3ex)" should set the property value assert_not_equals: property should be set got disallowed value "" 15 FAIL e.style['text-indent'] = "calc(50% + 60px) each-line hanging" should set the property value assert_not_equals: property should be set got disallowed value "" 9 PASS e.style['text-indent'] = "20% each-line" should set the property value 10 PASS e.style['text-indent'] = "calc(2em + 3ex) hanging each-line" should set the property value 11 PASS e.style['text-indent'] = "hanging calc(50% + 60px)" should set the property value 12 PASS e.style['text-indent'] = "each-line 10px" should set the property value 13 PASS e.style['text-indent'] = "hanging 20% each-line" should set the property value 14 PASS e.style['text-indent'] = "each-line hanging calc(2em + 3ex)" should set the property value 15 PASS e.style['text-indent'] = "calc(50% + 60px) each-line hanging" should set the property value 16 16 -
trunk/Source/WebCore/ChangeLog
r275193 r275199 1 2021-03-29 Antoine Quint <graouts@webkit.org> 2 3 Enable "hanging" and "each-line" keywords for the text-indent CSS property 4 https://bugs.webkit.org/show_bug.cgi?id=223851 5 6 Reviewed by Antti Koivisto. 7 8 We've had support for "hanging" and "each-line" behind the ENABLE_CSS3_TEXT flag. Probably by mistake, 9 "hanging" itself was parsed and Web-exposed by default. Presumably that was the case because that CSS 10 keyword existed in the context of SVG. 11 12 But LineWidth.cpp already knew how to handle these keywords, so there seems to be no reason to keep 13 these behind a flag. 14 15 So we remove all the ENABLE_CSS3_TEXT guards related to they keywords and address some spec compliance 16 issue, namely: 17 18 1. add the text-indent length or percentage, the "hanging" and "each-line" keywords in that order 19 in consumeTextIndent(), 20 2. use that same order for the computed style. 21 22 * css/CSSComputedStyleDeclaration.cpp: 23 (WebCore::ComputedStyleExtractor::valueForPropertyInStyle): 24 * css/CSSValueKeywords.in: 25 * css/parser/CSSPropertyParser.cpp: 26 (WebCore::consumeTextIndent): 27 * layout/inlineformatting/InlineLineBuilder.cpp: 28 (WebCore::Layout::LineBuilder::initialConstraintsForLine const): 29 * rendering/line/LineWidth.cpp: 30 (WebCore::requiresIndent): 31 * rendering/style/RenderStyle.cpp: 32 (WebCore::rareInheritedDataChangeRequiresLayout): 33 * rendering/style/RenderStyle.h: 34 * rendering/style/RenderStyleConstants.h: 35 * rendering/style/StyleRareInheritedData.cpp: 36 (WebCore::StyleRareInheritedData::StyleRareInheritedData): 37 (WebCore::StyleRareInheritedData::operator== const): 38 * rendering/style/StyleRareInheritedData.h: 39 * style/StyleBuilderCustom.h: 40 (WebCore::Style::BuilderCustom::applyInheritTextIndent): 41 (WebCore::Style::BuilderCustom::applyInitialTextIndent): 42 (WebCore::Style::BuilderCustom::applyValueTextIndent): 43 1 44 2021-03-29 David Kilzer <ddkilzer@apple.com> 2 45 -
trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp
r275160 r275199 3235 3235 RELEASE_ASSERT_NOT_REACHED(); 3236 3236 case CSSPropertyTextIndent: { 3237 // If CSS3_TEXT is disabled or text-indent has only one value(<length> | <percentage>),3238 // getPropertyCSSValue() returns CSSValue.3239 3237 auto textIndent = zoomAdjustedPixelValueForLength(style.textIndent(), style); 3240 #if ENABLE(CSS3_TEXT)3241 // If CSS3_TEXT is enabled and text-indent has -webkit-each-line or -webkit-hanging,3242 // getPropertyCSSValue() returns CSSValueList.3243 3238 if (style.textIndentLine() == TextIndentLine::EachLine || style.textIndentType() == TextIndentType::Hanging) { 3244 3239 auto list = CSSValueList::createSpaceSeparated(); 3245 3240 list->append(WTFMove(textIndent)); 3241 if (style.textIndentType() == TextIndentType::Hanging) 3242 list->append(cssValuePool.createIdentifierValue(CSSValueHanging)); 3246 3243 if (style.textIndentLine() == TextIndentLine::EachLine) 3247 3244 list->append(cssValuePool.createIdentifierValue(CSSValueEachLine)); 3248 if (style.textIndentType() == TextIndentType::Hanging)3249 list->append(cssValuePool.createIdentifierValue(CSSValueHanging));3250 3245 return list; 3251 3246 } 3252 #endif3253 3247 return textIndent; 3254 3248 } -
trunk/Source/WebCore/css/CSSValueKeywords.in
r275141 r275199 1357 1357 dense 1358 1358 1359 #if defined(ENABLE_CSS3_TEXT) && ENABLE_CSS3_TEXT1360 1359 // text-indent 1361 1360 each-line 1362 1361 // hanging 1363 #endif1364 1362 1365 1363 // -webkit-column-fill -
trunk/Source/WebCore/css/parser/CSSPropertyParser.cpp
r275141 r275199 1171 1171 { 1172 1172 // [ <length> | <percentage> ] && hanging? && each-line? 1173 // Keywords only allowed when css3Text is enabled. 1174 RefPtr<CSSValueList> list = CSSValueList::createSpaceSeparated(); 1175 1176 bool hasLengthOrPercentage = false; 1177 #if ENABLE(CSS3_TEXT) 1178 bool hasEachLine = false; 1179 #endif 1180 bool hasHanging = false; 1173 RefPtr<CSSValue> lengthOrPercentage; 1174 RefPtr<CSSPrimitiveValue> eachLine; 1175 RefPtr<CSSPrimitiveValue> hanging; 1181 1176 1182 1177 do { 1183 if (! hasLengthOrPercentage) {1178 if (!lengthOrPercentage) { 1184 1179 if (RefPtr<CSSValue> textIndent = consumeLengthOrPercent(range, cssParserMode, ValueRangeAll, UnitlessQuirk::Allow)) { 1185 list->append(*textIndent); 1186 hasLengthOrPercentage = true; 1180 lengthOrPercentage = textIndent; 1187 1181 continue; 1188 1182 } … … 1190 1184 1191 1185 CSSValueID id = range.peek().id(); 1192 #if ENABLE(CSS3_TEXT) 1193 if (!hasEachLine && id == CSSValueEachLine) { 1194 list->append(consumeIdent(range).releaseNonNull()); 1195 hasEachLine = true; 1186 if (!eachLine && id == CSSValueEachLine) { 1187 eachLine = consumeIdent(range); 1196 1188 continue; 1197 1189 } 1198 #endif 1199 1200 if (!hasHanging && id == CSSValueHanging) { 1201 list->append(consumeIdent(range).releaseNonNull()); 1202 hasHanging = true; 1190 1191 if (!hanging && id == CSSValueHanging) { 1192 hanging = consumeIdent(range); 1203 1193 continue; 1204 1194 } … … 1207 1197 } while (!range.atEnd()); 1208 1198 1209 if (!hasLengthOrPercentage) 1210 return nullptr; 1199 if (!lengthOrPercentage) 1200 return nullptr; 1201 1202 RefPtr<CSSValueList> list = CSSValueList::createSpaceSeparated(); 1203 list->append(*lengthOrPercentage); 1204 if (hanging) 1205 list->append(hanging.releaseNonNull()); 1206 if (eachLine) 1207 list->append(eachLine.releaseNonNull()); 1211 1208 1212 1209 return list; -
trunk/Source/WebCore/layout/inlineformatting/InlineLineBuilder.cpp
r274048 r275199 439 439 if (!isFormattingContextRootCandidateToTextIndent) 440 440 return { }; 441 auto invertLineRange = false; 442 #if ENABLE(CSS3_TEXT) 443 invertLineRange = root.style().textIndentType() == TextIndentType::Hanging; 444 #endif 441 auto invertLineRange = root.style().textIndentType() == TextIndentType::Hanging; 445 442 // text-indent: hanging inverts which lines are affected. 446 443 // inverted line range -> all the lines except the first one. -
trunk/Source/WebCore/rendering/line/LineWidth.cpp
r267923 r275199 240 240 if (isFirstLine) 241 241 shouldIndentText = IndentText; 242 #if ENABLE(CSS3_TEXT)243 242 else if (isAfterHardLineBreak && style.textIndentLine() == TextIndentLine::EachLine) 244 243 shouldIndentText = IndentText; … … 246 245 if (style.textIndentType() == TextIndentType::Hanging) 247 246 shouldIndentText = shouldIndentText == IndentText ? DoNotIndentText : IndentText; 248 #else249 UNUSED_PARAM(isAfterHardLineBreak);250 UNUSED_PARAM(style);251 #endif252 247 return shouldIndentText; 253 248 } -
trunk/Source/WebCore/rendering/style/RenderStyle.cpp
r274440 r275199 750 750 || first.textAlignLast != second.textAlignLast 751 751 || first.textJustify != second.textJustify 752 #endif 752 753 || first.textIndentLine != second.textIndentLine 753 #endif754 754 || first.effectiveZoom != second.effectiveZoom 755 755 || first.textZoom != second.textZoom -
trunk/Source/WebCore/rendering/style/RenderStyle.h
r275141 r275199 375 375 TextDecorationThickness textDecorationThickness() const { return m_rareInheritedData->textDecorationThickness; } 376 376 377 #if ENABLE(CSS3_TEXT)378 377 TextIndentLine textIndentLine() const { return static_cast<TextIndentLine>(m_rareInheritedData->textIndentLine); } 379 378 TextIndentType textIndentType() const { return static_cast<TextIndentType>(m_rareInheritedData->textIndentType); } 379 #if ENABLE(CSS3_TEXT) 380 380 TextAlignLast textAlignLast() const { return static_cast<TextAlignLast>(m_rareInheritedData->textAlignLast); } 381 381 TextJustify textJustify() const { return static_cast<TextJustify>(m_rareInheritedData->textJustify); } … … 980 980 void setTextZoom(TextZoom v) { SET_VAR(m_rareInheritedData, textZoom, static_cast<unsigned>(v)); } 981 981 982 #if ENABLE(CSS3_TEXT)983 982 void setTextIndentLine(TextIndentLine v) { SET_VAR(m_rareInheritedData, textIndentLine, static_cast<unsigned>(v)); } 984 983 void setTextIndentType(TextIndentType v) { SET_VAR(m_rareInheritedData, textIndentType, static_cast<unsigned>(v)); } 984 #if ENABLE(CSS3_TEXT) 985 985 void setTextAlignLast(TextAlignLast v) { SET_VAR(m_rareInheritedData, textAlignLast, static_cast<unsigned>(v)); } 986 986 void setTextJustify(TextJustify v) { SET_VAR(m_rareInheritedData, textJustify, static_cast<unsigned>(v)); } … … 1689 1689 #endif 1690 1690 1691 #if ENABLE(CSS3_TEXT)1692 1691 static TextIndentLine initialTextIndentLine() { return TextIndentLine::FirstLine; } 1693 1692 static TextIndentType initialTextIndentType() { return TextIndentType::Normal; } 1693 #if ENABLE(CSS3_TEXT) 1694 1694 static TextAlignLast initialTextAlignLast() { return TextAlignLast::Auto; } 1695 1695 static TextJustify initialTextJustify() { return TextJustify::Auto; } -
trunk/Source/WebCore/rendering/style/RenderStyleConstants.h
r274957 r275199 1080 1080 static const float maximumAllowedFontSize = 1000000.0f; 1081 1081 1082 #if ENABLE(CSS3_TEXT)1083 1084 1082 enum class TextIndentLine : uint8_t { 1085 1083 FirstLine, … … 1091 1089 Hanging 1092 1090 }; 1093 1094 #endif1095 1091 1096 1092 enum class Isolation : uint8_t { -
trunk/Source/WebCore/rendering/style/StyleRareInheritedData.cpp
r275141 r275199 102 102 , textEmphasisPosition(static_cast<unsigned>(RenderStyle::initialTextEmphasisPosition().toRaw())) 103 103 , textOrientation(static_cast<unsigned>(TextOrientation::Mixed)) 104 #if ENABLE(CSS3_TEXT)105 104 , textIndentLine(static_cast<unsigned>(RenderStyle::initialTextIndentLine())) 106 105 , textIndentType(static_cast<unsigned>(RenderStyle::initialTextIndentType())) 107 #endif108 106 , lineBoxContain(static_cast<unsigned>(RenderStyle::initialLineBoxContain().toRaw())) 109 107 , imageOrientation(RenderStyle::initialImageOrientation()) … … 200 198 , textEmphasisPosition(o.textEmphasisPosition) 201 199 , textOrientation(o.textOrientation) 202 #if ENABLE(CSS3_TEXT)203 200 , textIndentLine(o.textIndentLine) 204 201 , textIndentType(o.textIndentType) 205 #endif206 202 , lineBoxContain(o.lineBoxContain) 207 203 , imageOrientation(o.imageOrientation) … … 321 317 && textEmphasisPosition == o.textEmphasisPosition 322 318 && textOrientation == o.textOrientation 323 #if ENABLE(CSS3_TEXT)324 319 && textIndentLine == o.textIndentLine 325 320 && textIndentType == o.textIndentType 326 #endif327 321 && lineBoxContain == o.lineBoxContain 328 322 #if PLATFORM(IOS_FAMILY) -
trunk/Source/WebCore/rendering/style/StyleRareInheritedData.h
r275092 r275199 121 121 unsigned textEmphasisPosition : 4; // TextEmphasisPosition 122 122 unsigned textOrientation : 2; // TextOrientation 123 #if ENABLE(CSS3_TEXT)124 123 unsigned textIndentLine : 1; // TextIndentLine 125 124 unsigned textIndentType : 1; // TextIndentType 126 #endif127 125 unsigned lineBoxContain: 7; // OptionSet<LineBoxContain> 128 126 // CSS Image Values Level 3 -
trunk/Source/WebCore/style/StyleBuilderCustom.h
r275160 r275199 467 467 { 468 468 builderState.style().setTextIndent(Length { builderState.parentStyle().textIndent() }); 469 #if ENABLE(CSS3_TEXT)470 469 builderState.style().setTextIndentLine(builderState.parentStyle().textIndentLine()); 471 470 builderState.style().setTextIndentType(builderState.parentStyle().textIndentType()); 472 #endif473 471 } 474 472 … … 476 474 { 477 475 builderState.style().setTextIndent(RenderStyle::initialTextIndent()); 478 #if ENABLE(CSS3_TEXT)479 476 builderState.style().setTextIndentLine(RenderStyle::initialTextIndentLine()); 480 477 builderState.style().setTextIndentType(RenderStyle::initialTextIndentType()); 481 #endif482 478 } 483 479 … … 485 481 { 486 482 Length lengthOrPercentageValue; 487 #if ENABLE(CSS3_TEXT)488 483 TextIndentLine textIndentLineValue = RenderStyle::initialTextIndentLine(); 489 484 TextIndentType textIndentTypeValue = RenderStyle::initialTextIndentType(); 490 #endif491 485 for (auto& item : downcast<CSSValueList>(value)) { 492 486 auto& primitiveValue = downcast<CSSPrimitiveValue>(item.get()); 493 487 if (!primitiveValue.valueID()) 494 488 lengthOrPercentageValue = primitiveValue.convertToLength<FixedIntegerConversion | PercentConversion | CalculatedConversion>(builderState.cssToLengthConversionData()); 495 #if ENABLE(CSS3_TEXT)496 489 else if (primitiveValue.valueID() == CSSValueEachLine) 497 490 textIndentLineValue = TextIndentLine::EachLine; 498 491 else if (primitiveValue.valueID() == CSSValueHanging) 499 492 textIndentTypeValue = TextIndentType::Hanging; 500 #endif501 493 } 502 494 … … 505 497 506 498 builderState.style().setTextIndent(WTFMove(lengthOrPercentageValue)); 507 #if ENABLE(CSS3_TEXT)508 499 builderState.style().setTextIndentLine(textIndentLineValue); 509 500 builderState.style().setTextIndentType(textIndentTypeValue); 510 #endif511 501 } 512 502
Note: See TracChangeset
for help on using the changeset viewer.