Skip to content
  • morrita@google.com's avatar
    WebKit should support tab-size. · 6e818ec7
    morrita@google.com authored
    https://bugs.webkit.org/show_bug.cgi?id=52994
    
    Source/WebCore:
    
    - Added boilerplate for "tab-size" CSS property.
    - Added RenderStye::tabSize() as a RareInheritedData.
    - Replaced TextRun::m_allowTabs into TextRun::m_tabSize.
    
    Reviewed by Simon Fraser.
    
    Tests: fast/css/tab-size-expected.html
           fast/css/tab-size.html
    
    * css/CSSComputedStyleDeclaration.cpp:
    (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
    * css/CSSParser.cpp:
    (WebCore::CSSParser::parseValue):
    * css/CSSProperty.cpp:
    (WebCore::CSSProperty::isInheritedProperty):
    * css/CSSPropertyNames.in:
    * css/CSSStyleSelector.cpp:
    (WebCore::CSSStyleSelector::applyProperty):
    * html/canvas/CanvasRenderingContext2D.cpp:
    (WebCore::CanvasRenderingContext2D::drawTextInternal):
    * platform/chromium/PopupListBox.cpp:
    (WebCore::PopupListBox::paintRow):
    * platform/graphics/Font.h:
    (WebCore::Font::tabWidth):
    * platform/graphics/TextRun.h:
    (WebCore::TextRun::TextRun):
    (WebCore::TextRun::allowTabs):
    (WebCore::TextRun::tabSize):
    (WebCore::TextRun::setTabSize):
    * platform/graphics/WidthIterator.cpp:
    (WebCore::WidthIterator::advance):
    * platform/graphics/mac/ComplexTextController.cpp:
    (WebCore::ComplexTextController::adjustGlyphsAndAdvances):
    * platform/win/PopupMenuWin.cpp:
    (WebCore::PopupMenuWin::paint):
    * rendering/InlineTextBox.cpp:
    (WebCore::InlineTextBox::constructTextRun):
    * rendering/RenderBlock.cpp:
    (WebCore::RenderBlock::constructTextRun):
    * rendering/RenderBlockLineLayout.cpp:
    (WebCore::textWidth):
    (WebCore::tryHyphenating):
    * rendering/RenderText.cpp:
    (WebCore::RenderText::widthFromCache):
    (WebCore::RenderText::computePreferredLogicalWidths):
    (WebCore::RenderText::width):
    * rendering/RenderText.h:
    * rendering/style/RenderStyle.cpp:
    (WebCore::RenderStyle::diff):
    * rendering/style/RenderStyle.h:
    (WebCore::RenderStyleBitfields::tabSize):
    (WebCore::RenderStyleBitfields::collapsedTabSize):
    (WebCore::RenderStyleBitfields::setTabSize):
    (WebCore::RenderStyleBitfields::initialTabSize):
    * rendering/style/StyleRareInheritedData.cpp:
    (WebCore::StyleRareInheritedData::StyleRareInheritedData):
    (WebCore::StyleRareInheritedData::operator==):
    * rendering/style/StyleRareInheritedData.h:
    * rendering/svg/SVGInlineTextBox.cpp:
    (WebCore::SVGInlineTextBox::constructTextRun):
    * rendering/svg/SVGTextMetrics.cpp:
    (WebCore::constructTextRun):
    
    Source/WebKit/chromium:
    
    Reviewed by Simon Fraser.
    
    * src/WebTextRun.cpp:
    (WebKit::WebTextRun::operator WebCore::TextRun):
    
    LayoutTests:
    
    Reviewed by Simon Fraser.
    
    * fast/css/tab-size-expected.html: Added.
    * fast/css/tab-size.html: Added.
    * platform/chromium-linux/svg/css/getComputedStyle-basic-expected.txt:
    * platform/chromium-win/fast/css/getComputedStyle/computed-style-expected.txt:
    * platform/chromium-win/fast/css/getComputedStyle/computed-style-without-renderer-expected.txt:
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@116723 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    6e818ec7