diff options
author | Ben Murdoch <benm@google.com> | 2011-05-24 11:24:40 +0100 |
---|---|---|
committer | Ben Murdoch <benm@google.com> | 2011-06-02 09:53:15 +0100 |
commit | 81bc750723a18f21cd17d1b173cd2a4dda9cea6e (patch) | |
tree | 7a9e5ed86ff429fd347a25153107221543909b19 /Source/WebCore/svg/SVGSVGElement.cpp | |
parent | 94088a6d336c1dd80a1e734af51e96abcbb689a7 (diff) | |
download | external_webkit-81bc750723a18f21cd17d1b173cd2a4dda9cea6e.zip external_webkit-81bc750723a18f21cd17d1b173cd2a4dda9cea6e.tar.gz external_webkit-81bc750723a18f21cd17d1b173cd2a4dda9cea6e.tar.bz2 |
Merge WebKit at r80534: Intial merge by Git
Change-Id: Ia7a83357124c9e1cdb1debf55d9661ec0bd09a61
Diffstat (limited to 'Source/WebCore/svg/SVGSVGElement.cpp')
-rw-r--r-- | Source/WebCore/svg/SVGSVGElement.cpp | 20 |
1 files changed, 6 insertions, 14 deletions
diff --git a/Source/WebCore/svg/SVGSVGElement.cpp b/Source/WebCore/svg/SVGSVGElement.cpp index e2540e3..0778bb7 100644 --- a/Source/WebCore/svg/SVGSVGElement.cpp +++ b/Source/WebCore/svg/SVGSVGElement.cpp @@ -129,20 +129,12 @@ void SVGSVGElement::setContentStyleType(const AtomicString& type) FloatRect SVGSVGElement::viewport() const { - double x = 0; - double y = 0; - if (!isOutermostSVG()) { - x = this->x().value(this); - y = this->y().value(this); - } - float w = width().value(this); - float h = height().value(this); - AffineTransform viewBox = viewBoxToViewTransform(w, h); - double wDouble = w; - double hDouble = h; - viewBox.map(x, y, x, y); - viewBox.map(w, h, wDouble, hDouble); - return FloatRect::narrowPrecision(x, y, wDouble, hDouble); + FloatRect viewRectangle; + if (!isOutermostSVG()) + viewRectangle.setLocation(FloatPoint(x().value(this), y().value(this))); + + viewRectangle.setSize(FloatSize(width().value(this), height().value(this))); + return viewBoxToViewTransform(viewRectangle.width(), viewRectangle.height()).mapRect(viewRectangle); } int SVGSVGElement::relativeWidthValue() const |