⚠ Archived content — this site is no longer maintained.   Current WebKit documentation is at docs.webkit.org.

Changeset 145451 in webkit


Ignore:
Timestamp:
Mar 11, 2013, 6:12:11 PM (14 years ago)
Author:
commit-queue@webkit.org
Message:

Ruby text is incorrectly positioned when its writing-mode is changed to vertical after layout is done
​https://bugs.webkit.org/show_bug.cgi?id=96592

Patch by Yuki Sekiguchi <​yuki.sekiguchi@access-company.com> on 2013-03-11
Reviewed by Hajime Morrita.

Source/WebCore:

Fixed logical left of RenderRubyText is not cleared.

This causes trouble when RenderRubyTest is laid out vertically after horizontally.
Horizontal layout set logical top(== y).
Vertical layout don't set logical left(== y).
RenderRubyText::y remain old one.
We clear old RenderRubyText::y at the first part of layout().

Test: fast/writing-mode/ruby-text-logical-left.html

  • rendering/RenderRubyRun.cpp:

(WebCore::RenderRubyRun::layout): Reset logicalLeft not to reuse old one.

LayoutTests:

  • fast/writing-mode/ruby-text-logical-left-expected.html: Added.
  • fast/writing-mode/ruby-text-logical-left.html: Added.
Location:
trunk
Files:
2 added
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/LayoutTests/ChangeLog

    r145450 r145451  
     12013-03-11  Yuki Sekiguchi  <yuki.sekiguchi@access-company.com>
     2
     3        Ruby text is incorrectly positioned when its writing-mode is changed to vertical after layout is done
     4        https://bugs.webkit.org/show_bug.cgi?id=96592
     5
     6        Reviewed by Hajime Morrita.
     7
     8        * fast/writing-mode/ruby-text-logical-left-expected.html: Added.
     9        * fast/writing-mode/ruby-text-logical-left.html: Added.
     10
    1112013-03-11  Lamarque V. Souza  <Lamarque.Souza@basyskom.com>
    212
  • trunk/Source/WebCore/ChangeLog

    r145450 r145451  
     12013-03-11  Yuki Sekiguchi  <yuki.sekiguchi@access-company.com>
     2
     3        Ruby text is incorrectly positioned when its writing-mode is changed to vertical after layout is done
     4        https://bugs.webkit.org/show_bug.cgi?id=96592
     5
     6        Reviewed by Hajime Morrita.
     7
     8        Fixed logical left of RenderRubyText is not cleared.
     9
     10        This causes trouble when RenderRubyTest is laid out vertically after horizontally.
     11        Horizontal layout set logical top(== y).
     12        Vertical layout don't set logical left(== y).
     13        RenderRubyText::y remain old one.
     14        We clear old RenderRubyText::y at the first part of layout().
     15
     16        Test: fast/writing-mode/ruby-text-logical-left.html
     17
     18        * rendering/RenderRubyRun.cpp:
     19        (WebCore::RenderRubyRun::layout): Reset logicalLeft not to reuse old one.
     20
    1212013-03-11  Lamarque V. Souza  <Lamarque.Souza@basyskom.com>
    222
  • trunk/Source/WebCore/rendering/RenderRubyRun.cpp

    r143627 r145451  
    234234    RenderBlock::layout();
    235235   
    236     // Place the RenderRubyText such that its bottom is flush with the lineTop of the first line of the RenderRubyBase.
    237236    RenderRubyText* rt = rubyText();
    238237    if (!rt)
    239238        return;
     239
     240    rt->setLogicalLeft(0);
    240241   
     242    // Place the RenderRubyText such that its bottom is flush with the lineTop of the first line of the RenderRubyBase.
    241243    LayoutUnit lastLineRubyTextBottom = rt->logicalHeight();
    242244    LayoutUnit firstLineRubyTextTop = 0;
Note: See TracChangeset for help on using the changeset viewer.