Branch: refs/heads/main
  Home:   https://github.com/WebKit/WebKit
  Commit: 128b2cb838691029a10355e0f99f7884eb55a617
      
https://github.com/WebKit/WebKit/commit/128b2cb838691029a10355e0f99f7884eb55a617
  Author: Alan Baradlay <za...@apple.com>
  Date:   2022-11-06 (Sun, 06 Nov 2022)

  Changed paths:
    M Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.cpp
    M Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.h
    M Source/WebCore/rendering/RenderBlockFlow.cpp

  Log Message:
  -----------
  [IFC][Integration] Do not mutate root box's geometry with logical values
https://bugs.webkit.org/show_bug.cgi?id=247249

Reviewed by Antti Koivisto.

BoxGeometry should contain values based off of the coordinate space the box 
itself is in (and not the coordinate space it creates for its descendant).

In case of a formatting context root box (e.g. IFC root), the box's geometry 
may be different from what it establishes for the formatting context.
e.g. "writing-mode: vertical-lr" on box flips the width/height (top/left) 
values for the participating descendant boxes. This flipped geometry
should not be cached on the BoxGeometry instead we introduce 
m_inlineContentConstraints. This ensures that when a box both participates in a 
formatting context
and establishes a new formatting context for its descendants, we don't mutate 
the original geometry.

* Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.cpp:
(WebCore::LayoutIntegration::LineLayout::updateListMarkerDimensions):
(WebCore::LayoutIntegration::LineLayout::layout):
(WebCore::LayoutIntegration::LineLayout::constructContent):
(WebCore::LayoutIntegration::LineLayout::updateInlineContentConstraints):
(WebCore::LayoutIntegration::LineLayout::prepareFloatingState):
(WebCore::LayoutIntegration::LineLayout::updateFormattingRootGeometryAndInvalidate):
 Deleted.
* Source/WebCore/layout/integration/inline/LayoutIntegrationLineLayout.h:
* Source/WebCore/rendering/RenderBlockFlow.cpp:
(WebCore::RenderBlockFlow::layoutModernLines):

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


_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to