OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2006 Apple Computer, Inc. | 2 * Copyright (C) 2006 Apple Computer, Inc. |
3 * Copyright (C) 2007 Nikolas Zimmermann <zimmermann@kde.org> | 3 * Copyright (C) 2007 Nikolas Zimmermann <zimmermann@kde.org> |
4 * Copyright (C) Research In Motion Limited 2010. All rights reserved. | 4 * Copyright (C) Research In Motion Limited 2010. 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 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
74 if (isBlendingAllowed()) { | 74 if (isBlendingAllowed()) { |
75 bool hasBlendModeChanged = (oldStyle && oldStyle->hasBlendMode()) == !st
yle()->hasBlendMode(); | 75 bool hasBlendModeChanged = (oldStyle && oldStyle->hasBlendMode()) == !st
yle()->hasBlendMode(); |
76 if (parent() && hasBlendModeChanged) | 76 if (parent() && hasBlendModeChanged) |
77 parent()->descendantIsolationRequirementsChanged(style()->hasBlendMo
de() ? DescendantIsolationRequired : DescendantIsolationNeedsUpdate); | 77 parent()->descendantIsolationRequirementsChanged(style()->hasBlendMo
de() ? DescendantIsolationRequired : DescendantIsolationNeedsUpdate); |
78 } | 78 } |
79 | 79 |
80 LayoutBlock::styleDidChange(diff, oldStyle); | 80 LayoutBlock::styleDidChange(diff, oldStyle); |
81 SVGResourcesCache::clientStyleChanged(this, diff, styleRef()); | 81 SVGResourcesCache::clientStyleChanged(this, diff, styleRef()); |
82 } | 82 } |
83 | 83 |
84 void LayoutSVGBlock::mapLocalToContainer(const LayoutBoxModelObject* paintInvali
dationContainer, TransformState& transformState, MapCoordinatesFlags, bool* wasF
ixed, const PaintInvalidationState* paintInvalidationState) const | 84 void LayoutSVGBlock::mapLocalToAncestor(const LayoutBoxModelObject* ancestor, Tr
ansformState& transformState, MapCoordinatesFlags, bool* wasFixed, const PaintIn
validationState* paintInvalidationState) const |
85 { | 85 { |
86 SVGLayoutSupport::mapLocalToContainer(this, paintInvalidationContainer, tran
sformState, wasFixed, paintInvalidationState); | 86 SVGLayoutSupport::mapLocalToAncestor(this, ancestor, transformState, wasFixe
d, paintInvalidationState); |
87 } | 87 } |
88 | 88 |
89 const LayoutObject* LayoutSVGBlock::pushMappingToContainer(const LayoutBoxModelO
bject* ancestorToStopAt, LayoutGeometryMap& geometryMap) const | 89 const LayoutObject* LayoutSVGBlock::pushMappingToContainer(const LayoutBoxModelO
bject* ancestorToStopAt, LayoutGeometryMap& geometryMap) const |
90 { | 90 { |
91 return SVGLayoutSupport::pushMappingToContainer(this, ancestorToStopAt, geom
etryMap); | 91 return SVGLayoutSupport::pushMappingToContainer(this, ancestorToStopAt, geom
etryMap); |
92 } | 92 } |
93 | 93 |
94 LayoutRect LayoutSVGBlock::clippedOverflowRectForPaintInvalidation(const LayoutB
oxModelObject* paintInvalidationContainer, const PaintInvalidationState* paintIn
validationState) const | 94 LayoutRect LayoutSVGBlock::clippedOverflowRectForPaintInvalidation(const LayoutB
oxModelObject* paintInvalidationContainer, const PaintInvalidationState* paintIn
validationState) const |
95 { | 95 { |
96 return SVGLayoutSupport::clippedOverflowRectForPaintInvalidation(*this, pain
tInvalidationContainer, paintInvalidationState); | 96 return SVGLayoutSupport::clippedOverflowRectForPaintInvalidation(*this, pain
tInvalidationContainer, paintInvalidationState); |
97 } | 97 } |
98 | 98 |
99 void LayoutSVGBlock::mapToVisibleRectInContainerSpace(const LayoutBoxModelObject
* paintInvalidationContainer, LayoutRect& rect, const PaintInvalidationState* pa
intInvalidationState) const | 99 void LayoutSVGBlock::mapToVisibleRectInAncestorSpace(const LayoutBoxModelObject*
ancestor, LayoutRect& rect, const PaintInvalidationState* paintInvalidationStat
e) const |
100 { | 100 { |
101 FloatRect paintInvalidationRect(rect); | 101 FloatRect paintInvalidationRect(rect); |
102 const LayoutSVGRoot& svgRoot = SVGLayoutSupport::mapRectToSVGRootForPaintInv
alidation(*this, paintInvalidationRect, rect); | 102 const LayoutSVGRoot& svgRoot = SVGLayoutSupport::mapRectToSVGRootForPaintInv
alidation(*this, paintInvalidationRect, rect); |
103 svgRoot.mapToVisibleRectInContainerSpace(paintInvalidationContainer, rect, p
aintInvalidationState); | 103 svgRoot.mapToVisibleRectInAncestorSpace(ancestor, rect, paintInvalidationSta
te); |
104 } | 104 } |
105 | 105 |
106 bool LayoutSVGBlock::nodeAtPoint(HitTestResult&, const HitTestLocation&, const L
ayoutPoint&, HitTestAction) | 106 bool LayoutSVGBlock::nodeAtPoint(HitTestResult&, const HitTestLocation&, const L
ayoutPoint&, HitTestAction) |
107 { | 107 { |
108 ASSERT_NOT_REACHED(); | 108 ASSERT_NOT_REACHED(); |
109 return false; | 109 return false; |
110 } | 110 } |
111 | 111 |
112 void LayoutSVGBlock::invalidateTreeIfNeeded(PaintInvalidationState& paintInvalid
ationState) | 112 void LayoutSVGBlock::invalidateTreeIfNeeded(PaintInvalidationState& paintInvalid
ationState) |
113 { | 113 { |
114 if (!shouldCheckForPaintInvalidation(paintInvalidationState)) | 114 if (!shouldCheckForPaintInvalidation(paintInvalidationState)) |
115 return; | 115 return; |
116 | 116 |
117 ForceHorriblySlowRectMapping slowRectMapping(&paintInvalidationState); | 117 ForceHorriblySlowRectMapping slowRectMapping(&paintInvalidationState); |
118 LayoutBlockFlow::invalidateTreeIfNeeded(paintInvalidationState); | 118 LayoutBlockFlow::invalidateTreeIfNeeded(paintInvalidationState); |
119 } | 119 } |
120 | 120 |
121 } | 121 } |
OLD | NEW |