Skip to content
  • mitz@apple.com's avatar
    <rdar://problem/7752961> Unevenly distributed space in justified text · 7cc3aa97
    mitz@apple.com authored
    https://bugs.webkit.org/show_bug.cgi?id=36105
    
    Reviewed by Simon Fraser.
    
    WebCore: 
    
    Test: fast/text/justify-padding-distribution.html
    
    * platform/graphics/WidthIterator.cpp:
    (WebCore::WidthIterator::WidthIterator): Initialize m_padPerSpace to the quotient of the total
    padding and the number of spaces rather than truncating it.
    (WebCore::WidthIterator::advance): Subtract m_padPerSpace from m_padding and add the difference
    between its old and new values, when rounded, to the advance.
    * platform/graphics/mac/ComplexTextController.cpp:
    (WebCore::ComplexTextController::ComplexTextController):
    (WebCore::ComplexTextController::adjustGlyphsAndAdvances):
    * platform/graphics/win/UniscribeController.cpp:
    (WebCore::UniscribeController::UniscribeController):
    (WebCore::UniscribeController::shapeAndPlaceItem):
    * platform/graphics/win/UniscribeController.h:
    
    LayoutTests: 
    
    * fast/text/justify-padding-distribution-expected.checksum: Added.
    * fast/text/justify-padding-distribution-expected.png: Added.
    * fast/text/justify-padding-distribution-expected.txt: Added.
    * fast/text/justify-padding-distribution.html: Added.
    * platform/mac/css1/box_properties/clear_float-expected.checksum:
    * platform/mac/css1/box_properties/clear_float-expected.png:
    * platform/mac/css1/box_properties/float_elements_in_series-expected.checksum:
    * platform/mac/css1/box_properties/float_elements_in_series-expected.png:
    * platform/mac/css1/box_properties/float_on_text_elements-expected.checksum:
    * platform/mac/css1/box_properties/float_on_text_elements-expected.png:
    * platform/mac/css1/text_properties/text_align-expected.checksum:
    * platform/mac/css1/text_properties/text_align-expected.png:
    * platform/mac/css2.1/t0905-c5525-fltcont-00-d-g-expected.checksum:
    * platform/mac/css2.1/t0905-c5525-fltcont-00-d-g-expected.png:
    * platform/mac/css2.1/t0905-c5525-fltwidth-00-c-g-expected.checksum:
    * platform/mac/css2.1/t0905-c5525-fltwidth-00-c-g-expected.png:
    * platform/mac/css2.1/t1602-c546-txt-align-00-b-expected.checksum:
    * platform/mac/css2.1/t1602-c546-txt-align-00-b-expected.png:
    * platform/mac/fast/multicol/float-avoidance-expected.checksum:
    * platform/mac/fast/multicol/float-avoidance-expected.png:
    * platform/mac/fast/repaint/line-flow-with-floats-1-expected.checksum:
    * platform/mac/fast/repaint/line-flow-with-floats-1-expected.png:
    * platform/mac/fast/repaint/line-flow-with-floats-10-expected.checksum:
    * platform/mac/fast/repaint/line-flow-with-floats-10-expected.png:
    * platform/mac/fast/repaint/line-flow-with-floats-2-expected.checksum:
    * platform/mac/fast/repaint/line-flow-with-floats-2-expected.png:
    * platform/mac/fast/repaint/line-flow-with-floats-3-expected.checksum:
    * platform/mac/fast/repaint/line-flow-with-floats-3-expected.png:
    * platform/mac/fast/repaint/line-flow-with-floats-4-expected.checksum:
    * platform/mac/fast/repaint/line-flow-with-floats-4-expected.png:
    * platform/mac/fast/repaint/line-flow-with-floats-5-expected.checksum:
    * platform/mac/fast/repaint/line-flow-with-floats-5-expected.png:
    * platform/mac/fast/repaint/line-flow-with-floats-6-expected.checksum:
    * platform/mac/fast/repaint/line-flow-with-floats-6-expected.png:
    * platform/mac/fast/repaint/line-flow-with-floats-7-expected.checksum:
    * platform/mac/fast/repaint/line-flow-with-floats-7-expected.png:
    * platform/mac/fast/repaint/line-flow-with-floats-8-expected.checksum:
    * platform/mac/fast/repaint/line-flow-with-floats-8-expected.png:
    * platform/mac/fast/repaint/line-flow-with-floats-9-expected.checksum:
    * platform/mac/fast/repaint/line-flow-with-floats-9-expected.png:
    * platform/mac/fast/text/atsui-spacing-features-expected.checksum:
    * platform/mac/fast/text/atsui-spacing-features-expected.png:
    * platform/mac/fast/text/justified-selection-at-edge-expected.checksum:
    * platform/mac/fast/text/justified-selection-at-edge-expected.png:
    * platform/mac/tables/mozilla/marvin/x_tbody_align_justify-expected.checksum:
    * platform/mac/tables/mozilla/marvin/x_tbody_align_justify-expected.png:
    * platform/mac/tables/mozilla/marvin/x_td_align_justify-expected.checksum:
    * platform/mac/tables/mozilla/marvin/x_td_align_justify-expected.png:
    * platform/mac/tables/mozilla/marvin/x_tfoot_align_justify-expected.checksum:
    * platform/mac/tables/mozilla/marvin/x_tfoot_align_justify-expected.png:
    * platform/mac/tables/mozilla/marvin/x_th_align_justify-expected.checksum:
    * platform/mac/tables/mozilla/marvin/x_th_align_justify-expected.png:
    * platform/mac/tables/mozilla/marvin/x_thead_align_justify-expected.checksum:
    * platform/mac/tables/mozilla/marvin/x_thead_align_justify-expected.png:
    * platform/mac/tables/mozilla/marvin/x_tr_align_justify-expected.checksum:
    * platform/mac/tables/mozilla/marvin/x_tr_align_justify-expected.png:
    
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@61128 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    7cc3aa97