OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2004, 2005, 2007 Nikolas Zimmermann <zimmermann@kde.org> | 2 * Copyright (C) 2004, 2005, 2007 Nikolas Zimmermann <zimmermann@kde.org> |
3 * Copyright (C) 2004, 2005, 2007, 2008 Rob Buis <buis@kde.org> | 3 * Copyright (C) 2004, 2005, 2007, 2008 Rob Buis <buis@kde.org> |
4 * Copyright (C) 2007 Eric Seidel <eric@webkit.org> | 4 * Copyright (C) 2007 Eric Seidel <eric@webkit.org> |
5 * Copyright (C) 2009 Google, Inc. All rights reserved. | 5 * Copyright (C) 2009 Google, Inc. All rights reserved. |
6 * Copyright (C) 2009 Dirk Schulze <krit@webkit.org> | 6 * Copyright (C) 2009 Dirk Schulze <krit@webkit.org> |
7 * | 7 * |
8 * This library is free software; you can redistribute it and/or | 8 * This library is free software; you can redistribute it and/or |
9 * modify it under the terms of the GNU Library General Public | 9 * modify it under the terms of the GNU Library General Public |
10 * License as published by the Free Software Foundation; either | 10 * License as published by the Free Software Foundation; either |
(...skipping 130 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
141 } | 141 } |
142 | 142 |
143 if (continueRendering) { | 143 if (continueRendering) { |
144 childPaintInfo.updatePaintingRootForChildren(this); | 144 childPaintInfo.updatePaintingRootForChildren(this); |
145 for (RenderObject* child = firstChild(); child; child = child->nextS
ibling()) | 145 for (RenderObject* child = firstChild(); child; child = child->nextS
ibling()) |
146 child->paint(childPaintInfo, IntPoint()); | 146 child->paint(childPaintInfo, IntPoint()); |
147 } | 147 } |
148 } | 148 } |
149 | 149 |
150 // FIXME: This really should be drawn from local coordinates, but currently
we hack it | 150 // FIXME: This really should be drawn from local coordinates, but currently
we hack it |
151 // to avoid our clip killing our outline rect. Thus we translate our | 151 // to avoid our clip killing our outline rect. Thus we translate our |
152 // outline rect into parent coords before drawing. | 152 // outline rect into parent coords before drawing. |
153 // FIXME: This means our focus ring won't share our rotation like it should. | 153 // FIXME: This means our focus ring won't share our rotation like it should. |
154 // We should instead disable our clip during PaintPhaseOutline | 154 // We should instead disable our clip during PaintPhaseOutline |
155 if ((paintInfo.phase == PaintPhaseOutline || paintInfo.phase == PaintPhaseSe
lfOutline) && style()->outlineWidth() && style()->visibility() == VISIBLE) { | 155 if (paintInfo.phase == PaintPhaseForeground && style()->outlineWidth() && st
yle()->visibility() == VISIBLE) { |
156 IntRect paintRectInParent = enclosingIntRect(localToParentTransform().ma
pRect(repaintRect)); | 156 IntRect paintRectInParent = enclosingIntRect(localToParentTransform().ma
pRect(repaintRect)); |
157 paintOutline(paintInfo, paintRectInParent); | 157 paintOutline(paintInfo, paintRectInParent); |
158 } | 158 } |
159 } | 159 } |
160 | 160 |
161 // addFocusRingRects is called from paintOutline and needs to be in the same coo
rdinates as the paintOuline call | 161 // addFocusRingRects is called from paintOutline and needs to be in the same coo
rdinates as the paintOuline call |
162 void RenderSVGContainer::addFocusRingRects(Vector<IntRect>& rects, const LayoutP
oint&, const RenderLayerModelObject*) | 162 void RenderSVGContainer::addFocusRingRects(Vector<IntRect>& rects, const LayoutP
oint&, const RenderLayerModelObject*) |
163 { | 163 { |
164 IntRect paintRectInParent = enclosingIntRect(localToParentTransform().mapRec
t(repaintRectInLocalCoordinates())); | 164 IntRect paintRectInParent = enclosingIntRect(localToParentTransform().mapRec
t(repaintRectInLocalCoordinates())); |
165 if (!paintRectInParent.isEmpty()) | 165 if (!paintRectInParent.isEmpty()) |
(...skipping 30 matching lines...) Expand all Loading... |
196 if (objectBoundingBox().contains(localPoint)) { | 196 if (objectBoundingBox().contains(localPoint)) { |
197 updateHitTestResult(result, roundedLayoutPoint(localPoint)); | 197 updateHitTestResult(result, roundedLayoutPoint(localPoint)); |
198 return true; | 198 return true; |
199 } | 199 } |
200 } | 200 } |
201 // 16.4: "If there are no graphics elements whose relevant graphics content
is under the pointer (i.e., there is no target element), the event is not dispat
ched." | 201 // 16.4: "If there are no graphics elements whose relevant graphics content
is under the pointer (i.e., there is no target element), the event is not dispat
ched." |
202 return false; | 202 return false; |
203 } | 203 } |
204 | 204 |
205 } | 205 } |
OLD | NEW |