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, 2008 Rob Buis <buis@kde.org> | 3 * Copyright (C) 2004, 2005, 2008 Rob Buis <buis@kde.org> |
4 * Copyright (C) 2005, 2007 Eric Seidel <eric@webkit.org> | 4 * Copyright (C) 2005, 2007 Eric Seidel <eric@webkit.org> |
5 * Copyright (C) 2009 Google, Inc. | 5 * Copyright (C) 2009 Google, Inc. |
6 * Copyright (C) 2009 Dirk Schulze <krit@webkit.org> | 6 * Copyright (C) 2009 Dirk Schulze <krit@webkit.org> |
7 * Copyright (C) Research In Motion Limited 2010. All rights reserved. | 7 * Copyright (C) Research In Motion Limited 2010. All rights reserved. |
8 * Copyright (C) 2009 Jeff Schiller <codedread@gmail.com> | 8 * Copyright (C) 2009 Jeff Schiller <codedread@gmail.com> |
9 * Copyright (C) 2011 Renata Hodovan <reni@webkit.org> | 9 * Copyright (C) 2011 Renata Hodovan <reni@webkit.org> |
10 * Copyright (C) 2011 University of Szeged | 10 * Copyright (C) 2011 University of Szeged |
(...skipping 223 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
234 | 234 |
235 void RenderSVGShape::paint(PaintInfo& paintInfo, const LayoutPoint&) | 235 void RenderSVGShape::paint(PaintInfo& paintInfo, const LayoutPoint&) |
236 { | 236 { |
237 ANNOTATE_GRAPHICS_CONTEXT(paintInfo, this); | 237 ANNOTATE_GRAPHICS_CONTEXT(paintInfo, this); |
238 if (paintInfo.context->paintingDisabled() | 238 if (paintInfo.context->paintingDisabled() |
239 || paintInfo.phase != PaintPhaseForeground | 239 || paintInfo.phase != PaintPhaseForeground |
240 || style()->visibility() == HIDDEN | 240 || style()->visibility() == HIDDEN |
241 || isShapeEmpty()) | 241 || isShapeEmpty()) |
242 return; | 242 return; |
243 | 243 |
244 FloatRect boundingBox = repaintRectInLocalCoordinates(); | 244 FloatRect boundingBox = paintInvalidationRectInLocalCoordinates(); |
245 if (!SVGRenderSupport::paintInfoIntersectsRepaintRect(boundingBox, m_localTr
ansform, paintInfo)) | 245 if (!SVGRenderSupport::paintInfoIntersectsRepaintRect(boundingBox, m_localTr
ansform, paintInfo)) |
246 return; | 246 return; |
247 | 247 |
248 PaintInfo childPaintInfo(paintInfo); | 248 PaintInfo childPaintInfo(paintInfo); |
249 | 249 |
250 GraphicsContextStateSaver stateSaver(*childPaintInfo.context); | 250 GraphicsContextStateSaver stateSaver(*childPaintInfo.context); |
251 childPaintInfo.applyTransform(m_localTransform); | 251 childPaintInfo.applyTransform(m_localTransform); |
252 | 252 |
253 SVGRenderingContext renderingContext(this, childPaintInfo); | 253 SVGRenderingContext renderingContext(this, childPaintInfo); |
254 | 254 |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
288 } | 288 } |
289 | 289 |
290 if (style()->outlineWidth()) | 290 if (style()->outlineWidth()) |
291 paintOutline(childPaintInfo, IntRect(boundingBox)); | 291 paintOutline(childPaintInfo, IntRect(boundingBox)); |
292 } | 292 } |
293 | 293 |
294 // This method is called from inside paintOutline() since we call paintOutline() | 294 // This method is called from inside paintOutline() since we call paintOutline() |
295 // while transformed to our coord system, return local coords | 295 // while transformed to our coord system, return local coords |
296 void RenderSVGShape::addFocusRingRects(Vector<IntRect>& rects, const LayoutPoint
&, const RenderLayerModelObject*) | 296 void RenderSVGShape::addFocusRingRects(Vector<IntRect>& rects, const LayoutPoint
&, const RenderLayerModelObject*) |
297 { | 297 { |
298 IntRect rect = enclosingIntRect(repaintRectInLocalCoordinates()); | 298 IntRect rect = enclosingIntRect(paintInvalidationRectInLocalCoordinates()); |
299 if (!rect.isEmpty()) | 299 if (!rect.isEmpty()) |
300 rects.append(rect); | 300 rects.append(rect); |
301 } | 301 } |
302 | 302 |
303 bool RenderSVGShape::nodeAtFloatPoint(const HitTestRequest& request, HitTestResu
lt& result, const FloatPoint& pointInParent, HitTestAction hitTestAction) | 303 bool RenderSVGShape::nodeAtFloatPoint(const HitTestRequest& request, HitTestResu
lt& result, const FloatPoint& pointInParent, HitTestAction hitTestAction) |
304 { | 304 { |
305 // We only draw in the foreground phase, so we only hit-test then. | 305 // We only draw in the foreground phase, so we only hit-test then. |
306 if (hitTestAction != HitTestForeground) | 306 if (hitTestAction != HitTestForeground) |
307 return false; | 307 return false; |
308 | 308 |
(...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
457 return; | 457 return; |
458 | 458 |
459 ASSERT(m_path); | 459 ASSERT(m_path); |
460 | 460 |
461 SVGMarkerData markerData(m_markerPositions); | 461 SVGMarkerData markerData(m_markerPositions); |
462 m_path->apply(&markerData, SVGMarkerData::updateFromPathElement); | 462 m_path->apply(&markerData, SVGMarkerData::updateFromPathElement); |
463 markerData.pathIsDone(); | 463 markerData.pathIsDone(); |
464 } | 464 } |
465 | 465 |
466 } | 466 } |
OLD | NEW |