[webkit-changes] [WebKit/WebKit] 29a59e: When table cell have inline children which change ...
Ahmad Saleem
noreply at github.com
Mon Oct 24 09:56:46 PDT 2022
Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 29a59ed73e09bf27feb6bd3e78345d52e7517ad6
https://github.com/WebKit/WebKit/commit/29a59ed73e09bf27feb6bd3e78345d52e7517ad6
Author: Ahmad Saleem <ahmad.saleem792+github at gmail.com>
Date: 2022-10-24 (Mon, 24 Oct 2022)
Changed paths:
A LayoutTests/fast/writing-mode/table-vertical-child-width-expected.html
A LayoutTests/fast/writing-mode/table-vertical-child-width.html
M Source/WebCore/rendering/RenderBlockFlow.cpp
Log Message:
-----------
When table cell have inline children which change writing-mode, the cell overflows its contents
When table cell have inline children which change writing-mode, the cell overflows its contents
https://bugs.webkit.org/show_bug.cgi?id=112897
Reviewed by Alan Bujtas.
Inspired from - https://src.chromium.org/viewvc/blink?view=revision&revision=163239
When writing-mode is changed at block element, Blink thinks the logical
height as preferred logical width. This is done at
RenderBlockFlow::computeBlockPreferredLogicalWidths(). However,
RenderBlockFlow::computeInlinePreferredLogicalWidths() doesn't check
writing-mode, and just uses child's preferred logical width as preferred
logical width. If the height of a child is bigger than its preferred
width, this make the width of table cell narrower than its child.
We should check writing-mode of inline block. If the writing-mode is
changed, we must use child's logical height as preferred logical width.
* Source/WebCore/rendering/RenderBlockFlow.cpp:
(RenderBlockFlow::computeInlinePreferredLogicalWidths): Add logic for accounting for writing mode
* LayoutTests/fast/writing-mode/table-vertical-child-width.html: Added Test Case
* LayoutTests/fast/writing-mode/table-vertical-child-width-expected.html: Added Test Case Expectations
Canonical link: https://commits.webkit.org/255919@main
More information about the webkit-changes
mailing list