Changeset 70664 in webkit
- Timestamp:
- Oct 27, 2010 10:16:07 AM (14 years ago)
- Location:
- trunk
- Files:
-
- 8 added
- 6 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/LayoutTests/ChangeLog
r70660 r70664 1 2010-10-27 David Hyatt <hyatt@apple.com> 2 3 Reviewed by Dan Bernstein. 4 5 https://bugs.webkit.org/show_bug.cgi?id=48381 6 7 Make basic layer positioning work with vertical-lr writing-mode. 8 9 * fast/blockflow/japanese-lr-text.html: Added. 10 * fast/blockflow/japanese-rl-text.html: Added. 11 1 12 2010-10-27 Dimitri Glazkov <dglazkov@chromium.org> 2 13 -
trunk/WebCore/ChangeLog
r70663 r70664 1 2010-10-27 David Hyatt <hyatt@apple.com> 2 3 Reviewed by Dan Bernstein. 4 5 https://bugs.webkit.org/show_bug.cgi?id=48381 6 7 Make basic layer positioning work with vertical-lr writing-mode. 8 9 * rendering/RenderBlock.cpp: 10 (WebCore::RenderBlock::paintChildren): 11 (WebCore::RenderBlock::paintFloats): 12 * rendering/RenderBox.cpp: 13 (WebCore::RenderBox::adjustForFlippedBlocksWritingMode): 14 (WebCore::RenderBox::locationOffsetIncludingFlipping): 15 * rendering/RenderBox.h: 16 * rendering/RenderLayer.cpp: 17 (WebCore::RenderLayer::updateLayerPosition): 18 1 19 2010-10-27 Zhenyao Mo <zmo@google.com> 2 20 -
trunk/WebCore/rendering/RenderBlock.cpp
r70619 r70664 2271 2271 2272 2272 IntPoint childPoint(tx, ty); 2273 adjustForFlippedBlocksWritingMode(child, childPoint );2273 adjustForFlippedBlocksWritingMode(child, childPoint, ParentToChildFlippingAdjustment); 2274 2274 if (!child->hasSelfPaintingLayer() && !child->isFloating()) 2275 2275 child->paint(info, childPoint.x(), childPoint.y()); … … 2408 2408 IntPoint childPoint(tx + r->left() + r->m_renderer->marginLeft() - r->m_renderer->x(), 2409 2409 ty + r->top() + r->m_renderer->marginTop() - r->m_renderer->y()); 2410 adjustForFlippedBlocksWritingMode(r->m_renderer, childPoint );2410 adjustForFlippedBlocksWritingMode(r->m_renderer, childPoint, ParentToChildFlippingAdjustment); 2411 2411 r->m_renderer->paint(currentPaintInfo, childPoint.x(), childPoint.y()); 2412 2412 if (!preservePhase) { -
trunk/WebCore/rendering/RenderBox.cpp
r70546 r70664 3199 3199 } 3200 3200 3201 void RenderBox::adjustForFlippedBlocksWritingMode(RenderBox* child, IntPoint& point )3201 void RenderBox::adjustForFlippedBlocksWritingMode(RenderBox* child, IntPoint& point, FlippingAdjustment adjustment) 3202 3202 { 3203 3203 if (!style()->isFlippedBlocksWritingMode()) … … 3207 3207 // the right place. 3208 3208 if (style()->isHorizontalWritingMode()) 3209 point.move(0, height() - child->height() - child->y() - child->y());3209 point.move(0, height() - child->height() - child->y() - (adjustment == ParentToChildFlippingAdjustment ? child->y() : 0)); 3210 3210 else 3211 point.move(width() - child->width() - child->x() - child->x(), 0); 3211 point.move(width() - child->width() - child->x() - (adjustment == ParentToChildFlippingAdjustment ? child->x() : 0), 0); 3212 } 3213 3214 IntSize RenderBox::locationOffsetIncludingFlipping() 3215 { 3216 if (!parent() || !parent()->isBox()) 3217 return locationOffset(); 3218 3219 RenderBox* parent = parentBox(); 3220 IntPoint localPoint(x(), y()); 3221 parent->adjustForFlippedBlocksWritingMode(this, localPoint, ChildToParentFlippingAdjustment); 3222 return IntSize(localPoint.x(), localPoint.y()); 3212 3223 } 3213 3224 -
trunk/WebCore/rendering/RenderBox.h
r70546 r70664 378 378 virtual int baselinePosition(bool firstLine, LineDirectionMode, LinePositionMode = PositionOnContainingLine) const; 379 379 380 void adjustForFlippedBlocksWritingMode(RenderBox* child, IntPoint&); 380 enum FlippingAdjustment { ChildToParentFlippingAdjustment, ParentToChildFlippingAdjustment }; 381 void adjustForFlippedBlocksWritingMode(RenderBox* child, IntPoint&, FlippingAdjustment); 382 IntSize locationOffsetIncludingFlipping(); 381 383 382 384 protected: -
trunk/WebCore/rendering/RenderLayer.cpp
r70497 r70664 678 678 } 679 679 680 localPoint += box->locationOffset ();680 localPoint += box->locationOffsetIncludingFlipping(); 681 681 } 682 682 … … 692 692 // Rows and cells share the same coordinate space (that of the section). 693 693 // Omit them when computing our xpos/ypos. 694 localPoint += toRenderBox(curr)->locationOffset ();694 localPoint += toRenderBox(curr)->locationOffsetIncludingFlipping(); 695 695 } 696 696 curr = curr->parent(); … … 698 698 if (curr->isBox() && curr->isTableRow()) { 699 699 // Put ourselves into the row coordinate space. 700 localPoint -= toRenderBox(curr)->locationOffset ();700 localPoint -= toRenderBox(curr)->locationOffsetIncludingFlipping(); 701 701 } 702 702 }
Note: See TracChangeset
for help on using the changeset viewer.