Changeset 271948 in webkit
- Timestamp:
- Jan 27, 2021 6:13:56 AM (18 months ago)
- Location:
- trunk
- Files:
-
- 7 edited
-
LayoutTests/ChangeLog (modified) (1 diff)
-
LayoutTests/TestExpectations (modified) (1 diff)
-
Source/WebCore/ChangeLog (modified) (1 diff)
-
Source/WebCore/css/CSSComputedStyleDeclaration.cpp (modified) (2 diffs)
-
Source/WebCore/rendering/style/RenderStyleConstants.cpp (modified) (1 diff)
-
Source/WebCore/rendering/style/RenderStyleConstants.h (modified) (1 diff)
-
Source/WebCore/style/StyleBuilderCustom.h (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r271944 r271948 1 2021-01-27 Rob Buis <rbuis@igalia.com> 2 3 Handle zero aspect-ratio width/height 4 https://bugs.webkit.org/show_bug.cgi?id=220970 5 6 Reviewed by Manuel Rego Casasnovas. 7 8 Enable some tests that pass now. 9 10 * TestExpectations: 11 1 12 2021-01-27 Manuel Rego Casasnovas <rego@igalia.com> 2 13 -
trunk/LayoutTests/TestExpectations
r271939 r271948 4459 4459 webkit.org/b/214463 imported/w3c/web-platform-tests/css/css-sizing/aspect-ratio/replaced-element-032.html [ ImageOnlyFailure ] 4460 4460 webkit.org/b/214463 imported/w3c/web-platform-tests/css/css-sizing/aspect-ratio/table-element-001.html [ ImageOnlyFailure ] 4461 webkit.org/b/214463 imported/w3c/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-001.html [ ImageOnlyFailure ]4462 webkit.org/b/214463 imported/w3c/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-002.html [ ImageOnlyFailure ]4463 webkit.org/b/214463 imported/w3c/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-004.html [ ImageOnlyFailure ]4464 webkit.org/b/214463 imported/w3c/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-006.html [ ImageOnlyFailure ]4465 webkit.org/b/214463 imported/w3c/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-007.html [ ImageOnlyFailure ]4466 webkit.org/b/214463 imported/w3c/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-008.html [ ImageOnlyFailure ]4467 webkit.org/b/214463 imported/w3c/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-009.html [ ImageOnlyFailure ]4468 webkit.org/b/214463 imported/w3c/web-platform-tests/css/css-sizing/aspect-ratio/zero-or-infinity-010.html [ ImageOnlyFailure ]4469 4461 webkit.org/b/214463 imported/w3c/web-platform-tests/css/css-sizing/contain-intrinsic-size/contain-intrinsic-size-001.html [ ImageOnlyFailure ] 4470 4462 webkit.org/b/214463 imported/w3c/web-platform-tests/css/css-sizing/contain-intrinsic-size/contain-intrinsic-size-002.html [ ImageOnlyFailure ] -
trunk/Source/WebCore/ChangeLog
r271946 r271948 1 2021-01-27 Rob Buis <rbuis@igalia.com> 2 3 Handle zero aspect-ratio width/height 4 https://bugs.webkit.org/show_bug.cgi?id=220970 5 6 Reviewed by Manuel Rego Casasnovas. 7 8 Treat aspect-ratio with zero width and/or height internally 9 as auto, but when serializing maintain the original input. 10 11 * css/CSSComputedStyleDeclaration.cpp: 12 (WebCore::ComputedStyleExtractor::valueForPropertyInStyle): 13 * rendering/style/RenderStyleConstants.cpp: 14 (WebCore::operator<<): 15 * rendering/style/RenderStyleConstants.h: 16 * style/StyleBuilderCustom.h: 17 (WebCore::Style::BuilderCustom::applyValueAspectRatio): 18 1 19 2021-01-27 Antti Koivisto <antti@apple.com> 2 20 -
trunk/Source/WebCore/css/CSSComputedStyleDeclaration.cpp
r271480 r271948 3473 3473 case AspectRatioType::Auto: 3474 3474 return cssValuePool.createIdentifierValue(CSSValueAuto); 3475 case AspectRatioType::AutoZero: 3475 3476 case AspectRatioType::AutoAndRatio: 3476 3477 case AspectRatioType::Ratio: { … … 3478 3479 ratioList->append(cssValuePool.createValue(style.aspectRatioWidth(), CSSUnitType::CSS_NUMBER)); 3479 3480 ratioList->append(cssValuePool.createValue(style.aspectRatioHeight(), CSSUnitType::CSS_NUMBER)); 3480 if (style.aspectRatioType() == AspectRatioType::Ratio)3481 if (style.aspectRatioType() != AspectRatioType::AutoAndRatio) 3481 3482 return ratioList; 3482 3483 auto list = CSSValueList::createSpaceSeparated(); -
trunk/Source/WebCore/rendering/style/RenderStyleConstants.cpp
r269820 r271948 94 94 case AspectRatioType::Ratio: ts << "ratio"; break; 95 95 case AspectRatioType::AutoAndRatio: ts << "autoandratio"; break; 96 case AspectRatioType::AutoZero: ts << "autozero"; break; 96 97 } 97 98 return ts; -
trunk/Source/WebCore/rendering/style/RenderStyleConstants.h
r269820 r271948 520 520 Auto, 521 521 Ratio, 522 AutoAndRatio 522 AutoAndRatio, 523 AutoZero 523 524 }; 524 525 -
trunk/Source/WebCore/style/StyleBuilderCustom.h
r271688 r271948 1180 1180 } 1181 1181 1182 builderState.style().setAspectRatioType(AspectRatioType::Ratio);1183 1182 ASSERT(list.length() == 2); 1184 builderState.style().setAspectRatio(downcast<CSSPrimitiveValue>(list.item(0))->doubleValue(), downcast<CSSPrimitiveValue>(list.item(1))->doubleValue()); 1183 auto width = downcast<CSSPrimitiveValue>(list.item(0))->doubleValue(); 1184 auto height = downcast<CSSPrimitiveValue>(list.item(1))->doubleValue(); 1185 if (!width || !height) 1186 builderState.style().setAspectRatioType(AspectRatioType::AutoZero); 1187 else 1188 builderState.style().setAspectRatioType(AspectRatioType::Ratio); 1189 builderState.style().setAspectRatio(width, height); 1185 1190 } 1186 1191
Note: See TracChangeset
for help on using the changeset viewer.