-
hyatt@apple.com authored
Reviewed by Dan Bernstein. WebCore: Make "rl" and "bt" writing-modes work for blocks and lines. InlineTextBox is refactored to compute the correct top left corner and left baseline edge once so that can be passed down to all the painting functions instead of tx and ty. adjustment helpers have been added that can be called before painting children or lines and that fix up the coordinates from flipped to physical. Added fast/blockflow/english-rl-text.html and fast/blockflow/english-bt-text.html * rendering/InlineBox.cpp: (WebCore::InlineBox::adjustForFlippedBlocksWritingMode): * rendering/InlineBox.h: * rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::paintBoxDecorations): (WebCore::InlineFlowBox::paintMask): * rendering/InlineTextBox.cpp: (WebCore::paintTextWithShadows): (WebCore::InlineTextBox::paint): (WebCore::InlineTextBox::paintSelection): (WebCore::InlineTextBox::paintCompositionBackground): (WebCore::InlineTextBox::paintDecoration): (WebCore::InlineTextBox::paintSpellingOrGrammarMarker): (WebCore::InlineTextBox::paintTextMatchMarker): (WebCore::InlineTextBox::computeRectForReplacementMarker): (WebCore::InlineTextBox::paintDocumentMarkers): (WebCore::InlineTextBox::paintCompositionUnderline): * rendering/InlineTextBox.h: * rendering/RenderBlock.cpp: (WebCore::RenderBlock::paintChildren): (WebCore::RenderBlock::paintFloats): * rendering/RenderBox.cpp: (WebCore::RenderBox::adjustForFlippedBlocksWritingMode): * rendering/RenderBox.h: * rendering/style/RenderStyle.h: (WebCore::InheritedFlags::isFlippedBlocksWritingMode): LayoutTests: Make "rl" and "bt" writing-modes work for blocks and lines. InlineTextBox is refactored to compute the correct top left corner and left baseline edge once so that can be passed down to all the painting functions instead of tx and ty. adjustment helpers have been added that can be called before painting children or lines and that fix up the coordinates from flipped to physical. Added fast/blockflow/english-rl-text.html and fast/blockflow/english-bt-text.html * fast/blockflow/english-bt-text.html: Added. * fast/blockflow/english-rl-text.html: Added. * platform/mac/fast/blockflow/english-bt-text-expected.checksum: Added. * platform/mac/fast/blockflow/english-bt-text-expected.png: Added. * platform/mac/fast/blockflow/english-bt-text-expected.txt: Added. * platform/mac/fast/blockflow/english-rl-text-expected.checksum: Added. * platform/mac/fast/blockflow/english-rl-text-expected.png: Added. * platform/mac/fast/blockflow/english-rl-text-expected.txt: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@70482 268f45cc-cd09-0410-ab3c-d52691b4dbfc
hyatt@apple.com authoredReviewed by Dan Bernstein. WebCore: Make "rl" and "bt" writing-modes work for blocks and lines. InlineTextBox is refactored to compute the correct top left corner and left baseline edge once so that can be passed down to all the painting functions instead of tx and ty. adjustment helpers have been added that can be called before painting children or lines and that fix up the coordinates from flipped to physical. Added fast/blockflow/english-rl-text.html and fast/blockflow/english-bt-text.html * rendering/InlineBox.cpp: (WebCore::InlineBox::adjustForFlippedBlocksWritingMode): * rendering/InlineBox.h: * rendering/InlineFlowBox.cpp: (WebCore::InlineFlowBox::paintBoxDecorations): (WebCore::InlineFlowBox::paintMask): * rendering/InlineTextBox.cpp: (WebCore::paintTextWithShadows): (WebCore::InlineTextBox::paint): (WebCore::InlineTextBox::paintSelection): (WebCore::InlineTextBox::paintCompositionBackground): (WebCore::InlineTextBox::paintDecoration): (WebCore::InlineTextBox::paintSpellingOrGrammarMarker): (WebCore::InlineTextBox::paintTextMatchMarker): (WebCore::InlineTextBox::computeRectForReplacementMarker): (WebCore::InlineTextBox::paintDocumentMarkers): (WebCore::InlineTextBox::paintCompositionUnderline): * rendering/InlineTextBox.h: * rendering/RenderBlock.cpp: (WebCore::RenderBlock::paintChildren): (WebCore::RenderBlock::paintFloats): * rendering/RenderBox.cpp: (WebCore::RenderBox::adjustForFlippedBlocksWritingMode): * rendering/RenderBox.h: * rendering/style/RenderStyle.h: (WebCore::InheritedFlags::isFlippedBlocksWritingMode): LayoutTests: Make "rl" and "bt" writing-modes work for blocks and lines. InlineTextBox is refactored to compute the correct top left corner and left baseline edge once so that can be passed down to all the painting functions instead of tx and ty. adjustment helpers have been added that can be called before painting children or lines and that fix up the coordinates from flipped to physical. Added fast/blockflow/english-rl-text.html and fast/blockflow/english-bt-text.html * fast/blockflow/english-bt-text.html: Added. * fast/blockflow/english-rl-text.html: Added. * platform/mac/fast/blockflow/english-bt-text-expected.checksum: Added. * platform/mac/fast/blockflow/english-bt-text-expected.png: Added. * platform/mac/fast/blockflow/english-bt-text-expected.txt: Added. * platform/mac/fast/blockflow/english-rl-text-expected.checksum: Added. * platform/mac/fast/blockflow/english-rl-text-expected.png: Added. * platform/mac/fast/blockflow/english-rl-text-expected.txt: Added. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@70482 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Loading