diff options
author | Steve Block <steveblock@google.com> | 2010-04-27 16:31:00 +0100 |
---|---|---|
committer | Steve Block <steveblock@google.com> | 2010-05-11 14:42:12 +0100 |
commit | dcc8cf2e65d1aa555cce12431a16547e66b469ee (patch) | |
tree | 92a8d65cd5383bca9749f5327fb5e440563926e6 /WebCore/rendering/RenderSVGViewportContainer.cpp | |
parent | ccac38a6b48843126402088a309597e682f40fe6 (diff) | |
download | external_webkit-dcc8cf2e65d1aa555cce12431a16547e66b469ee.zip external_webkit-dcc8cf2e65d1aa555cce12431a16547e66b469ee.tar.gz external_webkit-dcc8cf2e65d1aa555cce12431a16547e66b469ee.tar.bz2 |
Merge webkit.org at r58033 : Initial merge by git
Change-Id: If006c38561af287c50cd578d251629b51e4d8cd1
Diffstat (limited to 'WebCore/rendering/RenderSVGViewportContainer.cpp')
-rw-r--r-- | WebCore/rendering/RenderSVGViewportContainer.cpp | 37 |
1 files changed, 1 insertions, 36 deletions
diff --git a/WebCore/rendering/RenderSVGViewportContainer.cpp b/WebCore/rendering/RenderSVGViewportContainer.cpp index 103d9d2..1587e7f 100644 --- a/WebCore/rendering/RenderSVGViewportContainer.cpp +++ b/WebCore/rendering/RenderSVGViewportContainer.cpp @@ -3,6 +3,7 @@ 2004, 2005, 2007 Rob Buis <buis@kde.org> 2007 Eric Seidel <eric@webkit.org> 2009 Google, Inc. + Copyright (C) Research In Motion Limited 2009-2010. All rights reserved. This library is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public @@ -26,9 +27,7 @@ #include "RenderSVGViewportContainer.h" #include "GraphicsContext.h" - #include "RenderView.h" -#include "SVGMarkerElement.h" #include "SVGSVGElement.h" namespace WebCore { @@ -38,29 +37,6 @@ RenderSVGViewportContainer::RenderSVGViewportContainer(SVGStyledElement* node) { } -FloatRect RenderSVGViewportContainer::markerBoundaries(const AffineTransform& markerTransformation) const -{ - FloatRect coordinates = repaintRectInLocalCoordinates(); - - // Map repaint rect into parent coordinate space, in which the marker boundaries have to be evaluated - coordinates = localToParentTransform().mapRect(coordinates); - - return markerTransformation.mapRect(coordinates); -} - -AffineTransform RenderSVGViewportContainer::markerContentTransformation(const AffineTransform& contentTransformation, const FloatPoint& origin, float strokeWidth) const -{ - // The 'origin' coordinate maps to SVGs refX/refY, given in coordinates relative to the viewport established by the marker - FloatPoint mappedOrigin = viewportTransform().mapPoint(origin); - - AffineTransform transformation = contentTransformation; - if (strokeWidth != -1) - transformation.scaleNonUniform(strokeWidth, strokeWidth); - - transformation.translate(-mappedOrigin.x(), -mappedOrigin.y()); - return transformation; -} - void RenderSVGViewportContainer::applyViewportClip(PaintInfo& paintInfo) { if (SVGRenderBase::isOverflowHidden(this)) @@ -81,14 +57,6 @@ void RenderSVGViewportContainer::calcViewport() float w = svg->width().value(svg); float h = svg->height().value(svg); m_viewport = FloatRect(x, y, w, h); - } else if (svgelem->hasTagName(SVGNames::markerTag)) { - if (!selfNeedsLayout()) - return; - - SVGMarkerElement* svg = static_cast<SVGMarkerElement*>(node()); - float w = svg->markerWidth().value(svg); - float h = svg->markerHeight().value(svg); - m_viewport = FloatRect(0, 0, w, h); } } @@ -97,9 +65,6 @@ AffineTransform RenderSVGViewportContainer::viewportTransform() const if (node()->hasTagName(SVGNames::svgTag)) { SVGSVGElement* svg = static_cast<SVGSVGElement*>(node()); return svg->viewBoxToViewTransform(m_viewport.width(), m_viewport.height()); - } else if (node()->hasTagName(SVGNames::markerTag)) { - SVGMarkerElement* marker = static_cast<SVGMarkerElement*>(node()); - return marker->viewBoxToViewTransform(m_viewport.width(), m_viewport.height()); } return AffineTransform(); |