Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: c38095edbbdb85138b057e0099901777e0f8bf40
      
https://github.com/WebKit/WebKit/commit/c38095edbbdb85138b057e0099901777e0f8bf40
  Author: Taher Ali <[email protected]>
  Date:   2025-10-14 (Tue, 14 Oct 2025)

  Changed paths:
    M LayoutTests/TestExpectations
    M LayoutTests/fast/sub-pixel/zoomed-em-border.html
    M 
LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/animations/border-width-interpolation-expected.txt
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-viewport/zoom/border-image-width-expected.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-viewport/zoom/border-image-width-ref.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-viewport/zoom/border-image-width.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-viewport/zoom/border-width-expected.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-viewport/zoom/border-width-ref.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-viewport/zoom/border-width.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-viewport/zoom/mask-border-width-expected.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-viewport/zoom/mask-border-width-ref.html
    A 
LayoutTests/imported/w3c/web-platform-tests/css/css-viewport/zoom/mask-border-width.html
    M 
LayoutTests/imported/w3c/web-platform-tests/css/css-viewport/zoom/svg-computed-style-expected.txt
    M 
LayoutTests/imported/w3c/web-platform-tests/css/css-viewport/zoom/svg-computed-style.html
    M LayoutTests/svg/zoom/page/zoom-replaced-intrinsic-ratio-001.htm
    M Source/WebCore/layout/formattingContexts/FormattingGeometry.cpp
    M Source/WebCore/layout/formattingContexts/block/BlockFormattingGeometry.cpp
    M Source/WebCore/layout/integration/LayoutIntegrationBoxGeometryUpdater.cpp
    M Source/WebCore/page/LocalFrameView.cpp
    M Source/WebCore/page/SpatialNavigation.cpp
    M Source/WebCore/rendering/BorderEdge.cpp
    M Source/WebCore/rendering/BorderPainter.cpp
    M Source/WebCore/rendering/BorderShape.cpp
    M Source/WebCore/rendering/NinePieceImagePainter.cpp
    M Source/WebCore/rendering/RenderBoxModelObjectInlines.h
    M Source/WebCore/rendering/RenderElement.cpp
    M Source/WebCore/rendering/RenderImage.cpp
    M Source/WebCore/rendering/RenderMultiColumnSet.cpp
    M Source/WebCore/rendering/RenderTable.cpp
    M Source/WebCore/rendering/RenderTableCell.cpp
    M Source/WebCore/rendering/RenderTableCell.h
    M Source/WebCore/rendering/RenderTableSection.cpp
    M Source/WebCore/rendering/RenderTheme.cpp
    M Source/WebCore/rendering/cocoa/RenderThemeCocoa.mm
    M Source/WebCore/rendering/ios/RenderThemeIOS.mm
    M Source/WebCore/rendering/style/CollapsedBorderValue.h
    M Source/WebCore/rendering/style/RenderStyle.cpp
    M Source/WebCore/rendering/style/RenderStyle.h
    M Source/WebCore/rendering/style/RenderStyleInlines.h
    M Source/WebCore/rendering/style/StyleRareInheritedData.cpp
    M Source/WebCore/rendering/style/StyleRareInheritedData.h
    M Source/WebCore/rendering/svg/SVGRenderSupport.cpp
    M Source/WebCore/style/StyleResolveForDocument.cpp
    M Source/WebCore/style/values/backgrounds/StyleBorderImageWidth.h
    M Source/WebCore/style/values/backgrounds/StyleLineWidth.cpp
    M Source/WebCore/style/values/backgrounds/StyleLineWidth.h
    M Source/WebCore/style/values/masking/StyleMaskBorderWidth.h
    M Source/WebCore/style/values/primitives/StyleZoomPrimitives.h
    M Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm
    M Source/WebKitLegacy/mac/DOM/DOM.mm

  Log Message:
  -----------
  [CSS ZOOM] Apply zoom factor to border width
https://bugs.webkit.org/show_bug.cgi?id=299885
rdar://161669263

Reviewed by Antti Koivisto and Sam Weinig.

We apply the zoom factor at evaluation-time for LineWidth,
BorderImageWidth, and MaskBorderWidth.

Tests: 
imported/w3c/web-platform-tests/css/css-viewport/zoom/border-image-width-ref.html
       
imported/w3c/web-platform-tests/css/css-viewport/zoom/border-image-width.html
       
imported/w3c/web-platform-tests/css/css-viewport/zoom/border-width-ref.html
       imported/w3c/web-platform-tests/css/css-viewport/zoom/border-width.html
       
imported/w3c/web-platform-tests/css/css-viewport/zoom/mask-border-width-ref.html
       
imported/w3c/web-platform-tests/css/css-viewport/zoom/mask-border-width.html

* LayoutTests/TestExpectations:

* LayoutTests/fast/sub-pixel/zoomed-em-border.html:
* LayoutTests/svg/zoom/page/zoom-replaced-intrinsic-ratio-001.htm:

We're disabling evaluation-time zoom flag on above tests because of double zoom.
The issue is that font-dependent units are being affected by the zoom
value during style-resolution, and we apply zoom again during evaluation.
This will be addressed separately as a follow-up:
https://bugs.webkit.org/show_bug.cgi?id=299816

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-viewport/zoom/border-image-width-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-viewport/zoom/border-image-width-ref.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-viewport/zoom/border-image-width.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-viewport/zoom/border-width-computed-zoom-expected.txt:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-viewport/zoom/border-width-computed-zoom.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-viewport/zoom/border-width-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-viewport/zoom/border-width-ref.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-viewport/zoom/border-width-svg-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-viewport/zoom/border-width.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-viewport/zoom/mask-border-width-expected.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-viewport/zoom/mask-border-width-ref.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-viewport/zoom/mask-border-width.html:
 Added.
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-viewport/zoom/svg-computed-style-expected.txt:
* 
LayoutTests/imported/w3c/web-platform-tests/css/css-viewport/zoom/svg-computed-style.html:

* 
LayoutTests/imported/w3c/web-platform-tests/css/css-backgrounds/animations/border-width-interpolation-expected.txt:

A progression

* Source/WebCore/layout/formattingContexts/FormattingGeometry.cpp:
(WebCore::Layout::FormattingGeometry::computedBorder const):
* Source/WebCore/layout/formattingContexts/block/BlockFormattingGeometry.cpp:
(WebCore::Layout::BlockFormattingGeometry::intrinsicWidthConstraints const):
* Source/WebCore/layout/integration/LayoutIntegrationBoxGeometryUpdater.cpp:
(WebCore::LayoutIntegration::BoxGeometryUpdater::logicalBorder):
* Source/WebCore/page/LocalFrameView.cpp:
(WebCore::LocalFrameView::fixedContainerEdges const):
* Source/WebCore/page/SpatialNavigation.cpp:
(WebCore::nodeRectInAbsoluteCoordinates):
* Source/WebCore/rendering/BorderEdge.cpp:
(WebCore::borderEdges):
(WebCore::borderEdgesForOutline):
* Source/WebCore/rendering/BorderPainter.cpp:
(WebCore::BorderPainter::paintOutline const):
* Source/WebCore/rendering/BorderShape.cpp:
(WebCore::BorderShape::shapeForBorderRect):
* Source/WebCore/rendering/NinePieceImagePainter.cpp:
(WebCore::computeSlice):
(WebCore::computeSlices):
(WebCore::paintNinePieceImage):
* Source/WebCore/rendering/RenderBoxModelObjectInlines.h:
(WebCore::RenderBoxModelObject::borderAfter const):
(WebCore::RenderBoxModelObject::borderBefore const):
(WebCore::RenderBoxModelObject::borderBottom const):
(WebCore::RenderBoxModelObject::borderEnd const):
(WebCore::RenderBoxModelObject::borderLeft const):
(WebCore::RenderBoxModelObject::borderRight const):
(WebCore::RenderBoxModelObject::borderStart const):
(WebCore::RenderBoxModelObject::borderTop const):
(WebCore::RenderBoxModelObject::borderWidths const):
* Source/WebCore/rendering/RenderElement.cpp:
(WebCore::drawFocusRing):
* Source/WebCore/rendering/RenderImage.cpp:
(WebCore::RenderImage::paintAreaElementFocusRing):
* Source/WebCore/rendering/RenderMultiColumnSet.cpp:
(WebCore::RenderMultiColumnSet::paintColumnRules):
* Source/WebCore/rendering/RenderTable.cpp:
(WebCore::RenderTable::calcBorderStart const):
(WebCore::RenderTable::calcBorderEnd const):
(WebCore::RenderTable::outerBorderBefore const):
(WebCore::RenderTable::outerBorderAfter const):
(WebCore::RenderTable::outerBorderStart const):
(WebCore::RenderTable::outerBorderEnd const):
* Source/WebCore/rendering/RenderTableCell.cpp:
(WebCore::RenderTableCell::emptyBorder const):
(WebCore::RenderTableCell::computeCollapsedStartBorder const):
(WebCore::RenderTableCell::computeCollapsedEndBorder const):
(WebCore::RenderTableCell::computeCollapsedBeforeBorder const):
(WebCore::RenderTableCell::computeCollapsedAfterBorder const):
(WebCore::emptyBorder): Deleted.
* Source/WebCore/rendering/RenderTableCell.h:
* Source/WebCore/rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::calcBlockDirectionOuterBorder const):
(WebCore::RenderTableSection::calcInlineDirectionOuterBorder const):
(WebCore::RenderTableSection::paintRowGroupBorderIfRequired):
(WebCore::RenderTableSection::cachedCollapsedBorder):
* Source/WebCore/rendering/RenderTheme.cpp:
(WebCore::RenderTheme::extractControlStyleForRenderer const):
(WebCore::RenderTheme::adjustButtonOrCheckboxOrColorWellOrInnerSpinButtonOrRadioStyle
 const):
* Source/WebCore/rendering/cocoa/RenderThemeCocoa.mm:
(WebCore::RenderThemeCocoa::paintMenuListButtonDecorationsForVectorBasedControls):
* Source/WebCore/rendering/ios/RenderThemeIOS.mm:
(WebCore::RenderThemeIOS::popupInternalPaddingBox const):
(WebCore::RenderThemeIOS::paintMenuListButtonDecorations):
* Source/WebCore/rendering/style/CollapsedBorderValue.h:
(WebCore::CollapsedBorderValue::CollapsedBorderValue):
(WebCore::CollapsedBorderValue::m_transparent): Deleted.
* Source/WebCore/rendering/style/RenderStyle.cpp:
(WebCore::RenderStyle::setDeviceScaleFactor):
(WebCore::RenderStyle::imageOutsets const):
(WebCore::RenderStyle::outlineWidth const):
(WebCore::RenderStyle::outlineOffset const):
(WebCore::RenderStyle::outlineSize const):
* Source/WebCore/rendering/style/RenderStyle.h:
* Source/WebCore/rendering/style/RenderStyleInlines.h:
(WebCore::RenderStyle::deviceScaleFactor const):
(WebCore::RenderStyle::usedZoomForLength const):
* Source/WebCore/rendering/style/StyleRareInheritedData.cpp:
(WebCore::StyleRareInheritedData::StyleRareInheritedData):
(WebCore::StyleRareInheritedData::operator== const):
(WebCore::StyleRareInheritedData::dumpDifferences const):
* Source/WebCore/rendering/style/StyleRareInheritedData.h:
* Source/WebCore/rendering/svg/SVGRenderSupport.cpp:
(WebCore::SVGRenderSupport::computeFloatVisibleRectInContainer):
* Source/WebCore/style/StyleResolveForDocument.cpp:
(WebCore::Style::resolveForDocument):
* Source/WebCore/style/values/backgrounds/StyleBorderImageWidth.h:
* Source/WebCore/style/values/backgrounds/StyleLineWidth.cpp:
(WebCore::Style::CSSValueConversion<LineWidth>::operator):
(WebCore::Style::FloatBoxExtent>::operator):
(WebCore::Style::LayoutBoxExtent>::operator):
* Source/WebCore/style/values/backgrounds/StyleLineWidth.h:
(WebCore::Style::LineWidth::LineWidth):
* Source/WebCore/style/values/masking/StyleMaskBorderWidth.h:
* Source/WebCore/style/values/primitives/StyleZoomPrimitives.h:
(WebCore::Style::ZoomFactor::ZoomFactor):
* Source/WebKit/WebProcess/WebPage/ios/WebPageIOS.mm:
(WebKit::WebPage::absoluteInteractionBounds):
* Source/WebKitLegacy/mac/DOM/DOM.mm:
(-[DOMNode innerFrameQuad]):

Canonical link: https://commits.webkit.org/301536@main



To unsubscribe from these emails, change your notification settings at 
https://github.com/WebKit/WebKit/settings/notifications
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to