Changeset 262033 in webkit


Ignore:
Timestamp:
May 21, 2020 3:59:01 PM (4 years ago)
Author:
Oriol Brufau
Message:

[css-grid] Don't create renderers for whitespace nodes
https://bugs.webkit.org/show_bug.cgi?id=212220

Reviewed by Manuel Rego Casasnovas.

LayoutTests/imported/w3c:

Import WPT test.

  • web-platform-tests/css/css-grid/grid-items/w3c-import.log:
  • web-platform-tests/css/css-grid/grid-items/whitespace-in-grid-item-001-expected.html: Added.
  • web-platform-tests/css/css-grid/grid-items/whitespace-in-grid-item-001.html: Added.

Source/WebCore:

Even with 'white-space: pre' we shouldn't create RenderTexts
for whitespace-only nodes in grid layout, according to
https://drafts.csswg.org/css-grid/#grid-items

This patch is based on https://codereview.chromium.org/16888008

Tests: fast/text/simple-line-layout-with-zero-sized-font.html

imported/w3c/web-platform-tests/css/css-grid/grid-items/whitespace-in-grid-item-001.html

  • rendering/updating/RenderTreeUpdater.cpp:

(WebCore::RenderTreeUpdater::textRendererIsNeeded):

LayoutTests:

Update test expectation.

  • fast/text/simple-line-layout-with-zero-sized-font-expected.txt:
Location:
trunk
Files:
2 added
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r262031 r262033  
     12020-05-21  Oriol Brufau  <obrufau@igalia.com>
     2
     3        [css-grid] Don't create renderers for whitespace nodes
     4        https://bugs.webkit.org/show_bug.cgi?id=212220
     5
     6        Reviewed by Manuel Rego Casasnovas.
     7
     8        Update test expectation.
     9
     10        * fast/text/simple-line-layout-with-zero-sized-font-expected.txt:
     11
    1122020-05-21  Diego Pino Garcia  <dpino@igalia.com>
    213
  • trunk/LayoutTests/fast/text/simple-line-layout-with-zero-sized-font-expected.txt

    r208170 r262033  
    11PASS if no assert in debug.
    2        
     2
  • trunk/LayoutTests/imported/w3c/ChangeLog

    r261974 r262033  
     12020-05-21  Oriol Brufau  <obrufau@igalia.com>
     2
     3        [css-grid] Don't create renderers for whitespace nodes
     4        https://bugs.webkit.org/show_bug.cgi?id=212220
     5
     6        Reviewed by Manuel Rego Casasnovas.
     7
     8        Import WPT test.
     9
     10        * web-platform-tests/css/css-grid/grid-items/w3c-import.log:
     11        * web-platform-tests/css/css-grid/grid-items/whitespace-in-grid-item-001-expected.html: Added.
     12        * web-platform-tests/css/css-grid/grid-items/whitespace-in-grid-item-001.html: Added.
     13
    1142020-05-20  Oriol Brufau  <obrufau@igalia.com>
    215
  • trunk/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/w3c-import.log

    r261894 r262033  
    260260/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/table-with-infinite-max-intrinsic-width-expected.html
    261261/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/table-with-infinite-max-intrinsic-width.html
     262/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/whitespace-in-grid-item-001-expected.html
     263/LayoutTests/imported/w3c/web-platform-tests/css/css-grid/grid-items/whitespace-in-grid-item-001.html
  • trunk/Source/WebCore/ChangeLog

    r262028 r262033  
     12020-05-21  Oriol Brufau  <obrufau@igalia.com>
     2
     3        [css-grid] Don't create renderers for whitespace nodes
     4        https://bugs.webkit.org/show_bug.cgi?id=212220
     5
     6        Reviewed by Manuel Rego Casasnovas.
     7
     8        Even with 'white-space: pre' we shouldn't create RenderTexts
     9        for whitespace-only nodes in grid layout, according to
     10        https://drafts.csswg.org/css-grid/#grid-items
     11
     12        This patch is based on https://codereview.chromium.org/16888008
     13
     14        Tests: fast/text/simple-line-layout-with-zero-sized-font.html
     15               imported/w3c/web-platform-tests/css/css-grid/grid-items/whitespace-in-grid-item-001.html
     16
     17        * rendering/updating/RenderTreeUpdater.cpp:
     18        (WebCore::RenderTreeUpdater::textRendererIsNeeded):
     19
    1202020-05-21  Simon Fraser  <simon.fraser@apple.com>
    221
  • trunk/Source/WebCore/rendering/updating/RenderTreeUpdater.cpp

    r260774 r262033  
    428428        return true;
    429429    // This text node has nothing but white space. We may still need a renderer in some cases.
    430     if (parentRenderer.isTable() || parentRenderer.isTableRow() || parentRenderer.isTableSection() || parentRenderer.isRenderTableCol() || parentRenderer.isFrameSet())
    431         return false;
    432     if (parentRenderer.isFlexibleBox() && !parentRenderer.isRenderButton())
     430    if (parentRenderer.isTable() || parentRenderer.isTableRow() || parentRenderer.isTableSection() || parentRenderer.isRenderTableCol() || parentRenderer.isFrameSet() || parentRenderer.isRenderGrid() || (parentRenderer.isFlexibleBox() && !parentRenderer.isRenderButton()))
    433431        return false;
    434432    if (parentRenderer.style().preserveNewline()) // pre/pre-wrap/pre-line always make renderers.
Note: See TracChangeset for help on using the changeset viewer.