| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) | 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) |
| 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) | 3 * (C) 1999 Antti Koivisto (koivisto@kde.org) |
| 4 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights
reserved. | 4 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009 Apple Inc. All rights
reserved. |
| 5 * | 5 * |
| 6 * This library is free software; you can redistribute it and/or | 6 * This library is free software; you can redistribute it and/or |
| 7 * modify it under the terms of the GNU Library General Public | 7 * modify it under the terms of the GNU Library General Public |
| 8 * License as published by the Free Software Foundation; either | 8 * License as published by the Free Software Foundation; either |
| 9 * version 2 of the License, or (at your option) any later version. | 9 * version 2 of the License, or (at your option) any later version. |
| 10 * | 10 * |
| (...skipping 656 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 667 { | 667 { |
| 668 m_quads.append(m_geometryMap.absoluteRect(rect)); | 668 m_quads.append(m_geometryMap.absoluteRect(rect)); |
| 669 } | 669 } |
| 670 private: | 670 private: |
| 671 Vector<FloatQuad>& m_quads; | 671 Vector<FloatQuad>& m_quads; |
| 672 RenderGeometryMap m_geometryMap; | 672 RenderGeometryMap m_geometryMap; |
| 673 }; | 673 }; |
| 674 | 674 |
| 675 } // unnamed namespace | 675 } // unnamed namespace |
| 676 | 676 |
| 677 void RenderInline::absoluteQuads(Vector<FloatQuad>& quads, bool* wasFixed) const | 677 void RenderInline::absoluteQuads(Vector<FloatQuad>& quads) const |
| 678 { | 678 { |
| 679 AbsoluteQuadsGeneratorContext context(this, quads); | 679 AbsoluteQuadsGeneratorContext context(this, quads); |
| 680 generateLineBoxRects(context); | 680 generateLineBoxRects(context); |
| 681 | 681 |
| 682 if (continuation()) | 682 if (continuation()) |
| 683 continuation()->absoluteQuads(quads, wasFixed); | 683 continuation()->absoluteQuads(quads); |
| 684 } | 684 } |
| 685 | 685 |
| 686 LayoutUnit RenderInline::offsetLeft() const | 686 LayoutUnit RenderInline::offsetLeft() const |
| 687 { | 687 { |
| 688 LayoutPoint topLeft; | 688 LayoutPoint topLeft; |
| 689 if (InlineBox* firstBox = firstLineBoxIncludingCulling()) | 689 if (InlineBox* firstBox = firstLineBoxIncludingCulling()) |
| 690 topLeft = flooredLayoutPoint(firstBox->topLeft()); | 690 topLeft = flooredLayoutPoint(firstBox->topLeft()); |
| 691 return adjustedPositionRelativeToOffsetParent(topLeft).x(); | 691 return adjustedPositionRelativeToOffsetParent(topLeft).x(); |
| 692 } | 692 } |
| 693 | 693 |
| (...skipping 424 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1118 | 1118 |
| 1119 if (container->hasOverflowClip()) | 1119 if (container->hasOverflowClip()) |
| 1120 offset -= toRenderBox(container)->scrolledContentOffset(); | 1120 offset -= toRenderBox(container)->scrolledContentOffset(); |
| 1121 | 1121 |
| 1122 if (offsetDependsOnPoint) | 1122 if (offsetDependsOnPoint) |
| 1123 *offsetDependsOnPoint = container->isBox() && container->style()->isFlip
pedBlocksWritingMode(); | 1123 *offsetDependsOnPoint = container->isBox() && container->style()->isFlip
pedBlocksWritingMode(); |
| 1124 | 1124 |
| 1125 return offset; | 1125 return offset; |
| 1126 } | 1126 } |
| 1127 | 1127 |
| 1128 void RenderInline::mapLocalToContainer(const RenderLayerModelObject* paintInvali
dationContainer, TransformState& transformState, MapCoordinatesFlags mode, bool*
wasFixed, const PaintInvalidationState* paintInvalidationState) const | 1128 void RenderInline::mapLocalToContainer(const RenderLayerModelObject* paintInvali
dationContainer, TransformState& transformState, MapCoordinatesFlags mode, const
PaintInvalidationState* paintInvalidationState) const |
| 1129 { | 1129 { |
| 1130 if (paintInvalidationContainer == this) | 1130 if (paintInvalidationContainer == this) |
| 1131 return; | 1131 return; |
| 1132 | 1132 |
| 1133 if (paintInvalidationState && paintInvalidationState->canMapToContainer(pain
tInvalidationContainer)) { | 1133 if (paintInvalidationState && paintInvalidationState->canMapToContainer(pain
tInvalidationContainer)) { |
| 1134 LayoutSize offset = paintInvalidationState->paintOffset(); | 1134 LayoutSize offset = paintInvalidationState->paintOffset(); |
| 1135 if (style()->hasInFlowPosition() && layer()) | 1135 if (style()->hasInFlowPosition() && layer()) |
| 1136 offset += layer()->offsetForInFlowPosition(); | 1136 offset += layer()->offsetForInFlowPosition(); |
| 1137 transformState.move(offset); | 1137 transformState.move(offset); |
| 1138 return; | 1138 return; |
| (...skipping 23 matching lines...) Expand all Loading... |
| 1162 transformState.move(containerOffset.width(), containerOffset.height(), p
reserve3D ? TransformState::AccumulateTransform : TransformState::FlattenTransfo
rm); | 1162 transformState.move(containerOffset.width(), containerOffset.height(), p
reserve3D ? TransformState::AccumulateTransform : TransformState::FlattenTransfo
rm); |
| 1163 | 1163 |
| 1164 if (containerSkipped) { | 1164 if (containerSkipped) { |
| 1165 // There can't be a transform between paintInvalidationContainer and o,
because transforms create containers, so it should be safe | 1165 // There can't be a transform between paintInvalidationContainer and o,
because transforms create containers, so it should be safe |
| 1166 // to just subtract the delta between the paintInvalidationContainer and
o. | 1166 // to just subtract the delta between the paintInvalidationContainer and
o. |
| 1167 LayoutSize containerOffset = paintInvalidationContainer->offsetFromAnces
torContainer(o); | 1167 LayoutSize containerOffset = paintInvalidationContainer->offsetFromAnces
torContainer(o); |
| 1168 transformState.move(-containerOffset.width(), -containerOffset.height(),
preserve3D ? TransformState::AccumulateTransform : TransformState::FlattenTrans
form); | 1168 transformState.move(-containerOffset.width(), -containerOffset.height(),
preserve3D ? TransformState::AccumulateTransform : TransformState::FlattenTrans
form); |
| 1169 return; | 1169 return; |
| 1170 } | 1170 } |
| 1171 | 1171 |
| 1172 o->mapLocalToContainer(paintInvalidationContainer, transformState, mode, was
Fixed, paintInvalidationState); | 1172 o->mapLocalToContainer(paintInvalidationContainer, transformState, mode, pai
ntInvalidationState); |
| 1173 } | 1173 } |
| 1174 | 1174 |
| 1175 void RenderInline::childBecameNonInline(RenderObject* child) | 1175 void RenderInline::childBecameNonInline(RenderObject* child) |
| 1176 { | 1176 { |
| 1177 // We have to split the parent flow. | 1177 // We have to split the parent flow. |
| 1178 RenderBlock* newBox = containingBlock()->createAnonymousBlock(); | 1178 RenderBlock* newBox = containingBlock()->createAnonymousBlock(); |
| 1179 RenderBoxModelObject* oldContinuation = continuation(); | 1179 RenderBoxModelObject* oldContinuation = continuation(); |
| 1180 setContinuation(newBox); | 1180 setContinuation(newBox); |
| 1181 RenderObject* beforeChild = child->nextSibling(); | 1181 RenderObject* beforeChild = child->nextSibling(); |
| 1182 children()->removeChildNode(this, child); | 1182 children()->removeChildNode(this, child); |
| (...skipping 345 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1528 pixelSnappedBox.maxY(), | 1528 pixelSnappedBox.maxY(), |
| 1529 pixelSnappedBox.maxX() + outlineWidth, | 1529 pixelSnappedBox.maxX() + outlineWidth, |
| 1530 pixelSnappedBox.maxY() + outlineWidth, | 1530 pixelSnappedBox.maxY() + outlineWidth, |
| 1531 BSBottom, outlineColor, outlineStyle, | 1531 BSBottom, outlineColor, outlineStyle, |
| 1532 outlineWidth, | 1532 outlineWidth, |
| 1533 outlineWidth, | 1533 outlineWidth, |
| 1534 antialias); | 1534 antialias); |
| 1535 } | 1535 } |
| 1536 | 1536 |
| 1537 } // namespace blink | 1537 } // namespace blink |
| OLD | NEW |