OLD | NEW |
1 /* | 1 /* |
2 * Copyright (c) 2009, Google Inc. All rights reserved. | 2 * Copyright (c) 2009, Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 32 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
43 LayoutSVGModelObject::LayoutSVGModelObject(SVGElement* node) | 43 LayoutSVGModelObject::LayoutSVGModelObject(SVGElement* node) |
44 : LayoutObject(node) | 44 : LayoutObject(node) |
45 { | 45 { |
46 } | 46 } |
47 | 47 |
48 bool LayoutSVGModelObject::isChildAllowed(LayoutObject* child, const ComputedSty
le&) const | 48 bool LayoutSVGModelObject::isChildAllowed(LayoutObject* child, const ComputedSty
le&) const |
49 { | 49 { |
50 return child->isSVG() && !(child->isSVGInline() || child->isSVGInlineText()
|| child->isSVGGradientStop()); | 50 return child->isSVG() && !(child->isSVGInline() || child->isSVGInlineText()
|| child->isSVGGradientStop()); |
51 } | 51 } |
52 | 52 |
53 LayoutRect LayoutSVGModelObject::clippedOverflowRectForPaintInvalidation(const L
ayoutBoxModelObject* paintInvalidationContainer, const PaintInvalidationState* p
aintInvalidationState) const | 53 void LayoutSVGModelObject::mapLocalToAncestor(const LayoutBoxModelObject* ancest
or, TransformState& transformState, MapCoordinatesFlags, bool* wasFixed) const |
54 { | 54 { |
55 return SVGLayoutSupport::clippedOverflowRectForPaintInvalidation(*this, pain
tInvalidationContainer, paintInvalidationState); | 55 SVGLayoutSupport::mapLocalToAncestor(this, ancestor, transformState, wasFixe
d); |
56 } | 56 } |
57 | 57 |
58 void LayoutSVGModelObject::mapLocalToAncestor(const LayoutBoxModelObject* ancest
or, TransformState& transformState, MapCoordinatesFlags, bool* wasFixed, const P
aintInvalidationState* paintInvalidationState) const | 58 LayoutRect LayoutSVGModelObject::absoluteClippedOverflowRect() const |
59 { | 59 { |
60 SVGLayoutSupport::mapLocalToAncestor(this, ancestor, transformState, wasFixe
d, paintInvalidationState); | 60 return SVGLayoutSupport::clippedOverflowRectForPaintInvalidation(*this, *vie
w()); |
61 } | 61 } |
62 | 62 |
63 void LayoutSVGModelObject::mapAncestorToLocal(const LayoutBoxModelObject* ancest
or, TransformState& transformState, MapCoordinatesFlags) const | 63 void LayoutSVGModelObject::mapAncestorToLocal(const LayoutBoxModelObject* ancest
or, TransformState& transformState, MapCoordinatesFlags) const |
64 { | 64 { |
65 SVGLayoutSupport::mapAncestorToLocal(*this, ancestor, transformState); | 65 SVGLayoutSupport::mapAncestorToLocal(*this, ancestor, transformState); |
66 } | 66 } |
67 | 67 |
68 const LayoutObject* LayoutSVGModelObject::pushMappingToContainer(const LayoutBox
ModelObject* ancestorToStopAt, LayoutGeometryMap& geometryMap) const | 68 const LayoutObject* LayoutSVGModelObject::pushMappingToContainer(const LayoutBox
ModelObject* ancestorToStopAt, LayoutGeometryMap& geometryMap) const |
69 { | 69 { |
70 return SVGLayoutSupport::pushMappingToContainer(this, ancestorToStopAt, geom
etryMap); | 70 return SVGLayoutSupport::pushMappingToContainer(this, ancestorToStopAt, geom
etryMap); |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
136 | 136 |
137 // If we didn't need paint invalidation then our children don't need as well
. | 137 // If we didn't need paint invalidation then our children don't need as well
. |
138 // Skip walking down the tree as everything should be fine below us. | 138 // Skip walking down the tree as everything should be fine below us. |
139 if (!shouldCheckForPaintInvalidation(paintInvalidationState)) | 139 if (!shouldCheckForPaintInvalidation(paintInvalidationState)) |
140 return; | 140 return; |
141 | 141 |
142 PaintInvalidationState newPaintInvalidationState(paintInvalidationState, *th
is); | 142 PaintInvalidationState newPaintInvalidationState(paintInvalidationState, *th
is); |
143 invalidatePaintIfNeeded(newPaintInvalidationState); | 143 invalidatePaintIfNeeded(newPaintInvalidationState); |
144 clearPaintInvalidationFlags(newPaintInvalidationState); | 144 clearPaintInvalidationFlags(newPaintInvalidationState); |
145 | 145 |
146 newPaintInvalidationState.updatePaintOffsetAndClipForChildren(); | 146 newPaintInvalidationState.updateForChildren(); |
147 invalidatePaintOfSubtreesIfNeeded(newPaintInvalidationState); | 147 invalidatePaintOfSubtreesIfNeeded(newPaintInvalidationState); |
148 } | 148 } |
149 | 149 |
150 } // namespace blink | 150 } // namespace blink |
OLD | NEW |