Diff
Modified: trunk/Source/WebCore/ChangeLog (93439 => 93440)
--- trunk/Source/WebCore/ChangeLog 2011-08-19 21:37:27 UTC (rev 93439)
+++ trunk/Source/WebCore/ChangeLog 2011-08-19 21:40:27 UTC (rev 93440)
@@ -1,3 +1,39 @@
+2011-08-19 Emil A Eklund <e...@chromium.org>
+
+ Switch clipping for svg to to new layout types
+ https://bugs.webkit.org/show_bug.cgi?id=66586
+
+ Reviewed by Eric Seidel.
+
+ No new tests as no new functionality.
+
+ * rendering/svg/RenderSVGForeignObject.h:
+ * rendering/svg/RenderSVGGradientStop.h:
+ (WebCore::RenderSVGGradientStop::clippedOverflowRectForRepaint):
+ * rendering/svg/RenderSVGHiddenContainer.h:
+ (WebCore::RenderSVGHiddenContainer::clippedOverflowRectForRepaint):
+ * rendering/svg/RenderSVGInline.cpp:
+ (WebCore::RenderSVGInline::clippedOverflowRectForRepaint):
+ (WebCore::RenderSVGInline::computeRectForRepaint):
+ * rendering/svg/RenderSVGInline.h:
+ * rendering/svg/RenderSVGModelObject.cpp:
+ (WebCore::RenderSVGModelObject::clippedOverflowRectForRepaint):
+ (WebCore::RenderSVGModelObject::computeRectForRepaint):
+ * rendering/svg/RenderSVGModelObject.h:
+ * rendering/svg/RenderSVGText.cpp:
+ (WebCore::RenderSVGText::clippedOverflowRectForRepaint):
+ (WebCore::RenderSVGText::computeRectForRepaint):
+ * rendering/svg/RenderSVGText.h:
+ * svg/SVGSVGElement.cpp:
+ (WebCore::SVGSVGElement::localCoordinateSpaceTransform):
+ * svg/SVGSVGElement.h:
+ (WebCore::SVGSVGElement::setContainerSize):
+ (WebCore::SVGSVGElement::containerSize):
+ * svg/graphics/SVGImage.cpp:
+ (WebCore::SVGImageChromeClient::invalidateContentsAndWindow):
+ (WebCore::SVGImage::setContainerSize):
+ * svg/graphics/SVGImage.h:
+
2011-08-19 Sheriff Bot <webkit.review....@gmail.com>
Unreviewed, rolling out r93425.
Modified: trunk/Source/WebCore/rendering/svg/RenderSVGForeignObject.h (93439 => 93440)
--- trunk/Source/WebCore/rendering/svg/RenderSVGForeignObject.h 2011-08-19 21:37:27 UTC (rev 93439)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGForeignObject.h 2011-08-19 21:40:27 UTC (rev 93440)
@@ -39,8 +39,8 @@
virtual void paint(PaintInfo&, const LayoutPoint&);
- virtual IntRect clippedOverflowRectForRepaint(RenderBoxModelObject* repaintContainer) const;
- virtual void computeRectForRepaint(RenderBoxModelObject* repaintContainer, IntRect&, bool fixed = false) const;
+ virtual LayoutRect clippedOverflowRectForRepaint(RenderBoxModelObject* repaintContainer) const;
+ virtual void computeRectForRepaint(RenderBoxModelObject* repaintContainer, LayoutRect&, bool fixed = false) const;
virtual bool requiresLayer() const { return false; }
virtual void layout();
Modified: trunk/Source/WebCore/rendering/svg/RenderSVGGradientStop.h (93439 => 93440)
--- trunk/Source/WebCore/rendering/svg/RenderSVGGradientStop.h 2011-08-19 21:37:27 UTC (rev 93439)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGGradientStop.h 2011-08-19 21:40:27 UTC (rev 93440)
@@ -43,7 +43,7 @@
// This overrides are needed to prevent ASSERTs on <svg><stop /></svg>
// RenderObject's default implementations ASSERT_NOT_REACHED()
// https://bugs.webkit.org/show_bug.cgi?id=20400
- virtual IntRect clippedOverflowRectForRepaint(RenderBoxModelObject*) const { return IntRect(); }
+ virtual LayoutRect clippedOverflowRectForRepaint(RenderBoxModelObject*) const { return LayoutRect(); }
virtual FloatRect objectBoundingBox() const { return FloatRect(); }
virtual FloatRect strokeBoundingBox() const { return FloatRect(); }
virtual FloatRect repaintRectInLocalCoordinates() const { return FloatRect(); }
Modified: trunk/Source/WebCore/rendering/svg/RenderSVGHiddenContainer.h (93439 => 93440)
--- trunk/Source/WebCore/rendering/svg/RenderSVGHiddenContainer.h 2011-08-19 21:37:27 UTC (rev 93439)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGHiddenContainer.h 2011-08-19 21:40:27 UTC (rev 93440)
@@ -43,7 +43,7 @@
virtual void paint(PaintInfo&, const LayoutPoint&);
- virtual IntRect clippedOverflowRectForRepaint(RenderBoxModelObject*) const { return IntRect(); }
+ virtual LayoutRect clippedOverflowRectForRepaint(RenderBoxModelObject*) const { return LayoutRect(); }
virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed);
virtual bool nodeAtFloatPoint(const HitTestRequest&, HitTestResult&, const FloatPoint& pointInParent, HitTestAction);
Modified: trunk/Source/WebCore/rendering/svg/RenderSVGInline.cpp (93439 => 93440)
--- trunk/Source/WebCore/rendering/svg/RenderSVGInline.cpp 2011-08-19 21:37:27 UTC (rev 93439)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGInline.cpp 2011-08-19 21:40:27 UTC (rev 93440)
@@ -67,12 +67,12 @@
return FloatRect();
}
-IntRect RenderSVGInline::clippedOverflowRectForRepaint(RenderBoxModelObject* repaintContainer) const
+LayoutRect RenderSVGInline::clippedOverflowRectForRepaint(RenderBoxModelObject* repaintContainer) const
{
return SVGRenderSupport::clippedOverflowRectForRepaint(this, repaintContainer);
}
-void RenderSVGInline::computeRectForRepaint(RenderBoxModelObject* repaintContainer, IntRect& repaintRect, bool fixed) const
+void RenderSVGInline::computeRectForRepaint(RenderBoxModelObject* repaintContainer, LayoutRect& repaintRect, bool fixed) const
{
SVGRenderSupport::computeRectForRepaint(this, repaintContainer, repaintRect, fixed);
}
Modified: trunk/Source/WebCore/rendering/svg/RenderSVGInline.h (93439 => 93440)
--- trunk/Source/WebCore/rendering/svg/RenderSVGInline.h 2011-08-19 21:37:27 UTC (rev 93439)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGInline.h 2011-08-19 21:40:27 UTC (rev 93440)
@@ -45,9 +45,9 @@
virtual FloatRect strokeBoundingBox() const;
virtual FloatRect repaintRectInLocalCoordinates() const;
- virtual IntRect clippedOverflowRectForRepaint(RenderBoxModelObject* repaintContainer) const;
- virtual void computeRectForRepaint(RenderBoxModelObject* repaintContainer, IntRect&, bool fixed = false) const;
- virtual void mapLocalToContainer(RenderBoxModelObject* repaintContainer, bool useTransforms, bool fixed, TransformState&, bool* wasFixed = 0) const;
+ virtual LayoutRect clippedOverflowRectForRepaint(RenderBoxModelObject* repaintContainer) const;
+ virtual void computeRectForRepaint(RenderBoxModelObject* repaintContainer, LayoutRect&, bool fixed = false) const;
+ virtual void mapLocalToContainer(RenderBoxModelObject* repaintContainer, bool useTransforms, bool fixed, TransformState&, bool* wasFixed = 0) const;
virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed);
private:
Modified: trunk/Source/WebCore/rendering/svg/RenderSVGModelObject.cpp (93439 => 93440)
--- trunk/Source/WebCore/rendering/svg/RenderSVGModelObject.cpp 2011-08-19 21:37:27 UTC (rev 93439)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGModelObject.cpp 2011-08-19 21:40:27 UTC (rev 93440)
@@ -43,12 +43,12 @@
{
}
-IntRect RenderSVGModelObject::clippedOverflowRectForRepaint(RenderBoxModelObject* repaintContainer) const
+LayoutRect RenderSVGModelObject::clippedOverflowRectForRepaint(RenderBoxModelObject* repaintContainer) const
{
return SVGRenderSupport::clippedOverflowRectForRepaint(this, repaintContainer);
}
-void RenderSVGModelObject::computeRectForRepaint(RenderBoxModelObject* repaintContainer, IntRect& repaintRect, bool fixed) const
+void RenderSVGModelObject::computeRectForRepaint(RenderBoxModelObject* repaintContainer, LayoutRect& repaintRect, bool fixed) const
{
SVGRenderSupport::computeRectForRepaint(this, repaintContainer, repaintRect, fixed);
}
Modified: trunk/Source/WebCore/rendering/svg/RenderSVGModelObject.h (93439 => 93440)
--- trunk/Source/WebCore/rendering/svg/RenderSVGModelObject.h 2011-08-19 21:37:27 UTC (rev 93439)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGModelObject.h 2011-08-19 21:40:27 UTC (rev 93440)
@@ -51,9 +51,9 @@
virtual bool requiresLayer() const { return false; }
- virtual IntRect clippedOverflowRectForRepaint(RenderBoxModelObject* repaintContainer) const;
- virtual void computeRectForRepaint(RenderBoxModelObject* repaintContainer, IntRect&, bool fixed = false) const;
- virtual IntRect outlineBoundsForRepaint(RenderBoxModelObject* repaintContainer, IntPoint*) const;
+ virtual LayoutRect clippedOverflowRectForRepaint(RenderBoxModelObject* repaintContainer) const;
+ virtual void computeRectForRepaint(RenderBoxModelObject* repaintContainer, LayoutRect&, bool fixed = false) const;
+ virtual LayoutRect outlineBoundsForRepaint(RenderBoxModelObject* repaintContainer, LayoutPoint*) const;
virtual void absoluteRects(Vector<LayoutRect>&, const LayoutPoint& accumulatedOffset);
virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed);
Modified: trunk/Source/WebCore/rendering/svg/RenderSVGText.cpp (93439 => 93440)
--- trunk/Source/WebCore/rendering/svg/RenderSVGText.cpp 2011-08-19 21:37:27 UTC (rev 93439)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGText.cpp 2011-08-19 21:40:27 UTC (rev 93440)
@@ -82,12 +82,12 @@
return toRenderSVGText(start);
}
-IntRect RenderSVGText::clippedOverflowRectForRepaint(RenderBoxModelObject* repaintContainer) const
+LayoutRect RenderSVGText::clippedOverflowRectForRepaint(RenderBoxModelObject* repaintContainer) const
{
return SVGRenderSupport::clippedOverflowRectForRepaint(this, repaintContainer);
}
-void RenderSVGText::computeRectForRepaint(RenderBoxModelObject* repaintContainer, IntRect& repaintRect, bool fixed) const
+void RenderSVGText::computeRectForRepaint(RenderBoxModelObject* repaintContainer, LayoutRect& repaintRect, bool fixed) const
{
SVGRenderSupport::computeRectForRepaint(this, repaintContainer, repaintRect, fixed);
}
Modified: trunk/Source/WebCore/rendering/svg/RenderSVGText.h (93439 => 93440)
--- trunk/Source/WebCore/rendering/svg/RenderSVGText.h 2011-08-19 21:37:27 UTC (rev 93439)
+++ trunk/Source/WebCore/rendering/svg/RenderSVGText.h 2011-08-19 21:40:27 UTC (rev 93440)
@@ -62,8 +62,8 @@
virtual void absoluteQuads(Vector<FloatQuad>&, bool* wasFixed);
- virtual IntRect clippedOverflowRectForRepaint(RenderBoxModelObject* repaintContainer) const;
- virtual void computeRectForRepaint(RenderBoxModelObject* repaintContainer, IntRect&, bool fixed = false) const;
+ virtual LayoutRect clippedOverflowRectForRepaint(RenderBoxModelObject* repaintContainer) const;
+ virtual void computeRectForRepaint(RenderBoxModelObject* repaintContainer, LayoutRect&, bool fixed = false) const;
virtual void mapLocalToContainer(RenderBoxModelObject* repaintContainer, bool useTransforms, bool fixed, TransformState&, bool* wasFixed = 0) const;
Modified: trunk/Source/WebCore/svg/SVGSVGElement.cpp (93439 => 93440)
--- trunk/Source/WebCore/svg/SVGSVGElement.cpp 2011-08-19 21:37:27 UTC (rev 93439)
+++ trunk/Source/WebCore/svg/SVGSVGElement.cpp 2011-08-19 21:40:27 UTC (rev 93440)
@@ -492,7 +492,7 @@
// Respect scroll offset.
if (FrameView* view = document()->view()) {
- IntSize scrollOffset = view->scrollOffset();
+ LayoutSize scrollOffset = view->scrollOffset();
transform.translate(-scrollOffset.width(), -scrollOffset.height());
}
}
Modified: trunk/Source/WebCore/svg/SVGSVGElement.h (93439 => 93440)
--- trunk/Source/WebCore/svg/SVGSVGElement.h 2011-08-19 21:37:27 UTC (rev 93439)
+++ trunk/Source/WebCore/svg/SVGSVGElement.h 2011-08-19 21:40:27 UTC (rev 93440)
@@ -63,8 +63,8 @@
FloatRect viewport() const;
- void setContainerSize(const IntSize& containerSize) { m_containerSize = containerSize; m_hasSetContainerSize = true; }
- IntSize containerSize() const { return m_containerSize; }
+ void setContainerSize(const LayoutSize& containerSize) { m_containerSize = containerSize; m_hasSetContainerSize = true; }
+ LayoutSize containerSize() const { return m_containerSize; }
bool hasSetContainerSize() const { return m_hasSetContainerSize; }
int relativeWidthValue() const;
int relativeHeightValue() const;
@@ -181,7 +181,7 @@
RefPtr<SMILTimeContainer> m_timeContainer;
FloatPoint m_translation;
mutable OwnPtr<SVGViewSpec> m_viewSpec;
- IntSize m_containerSize;
+ LayoutSize m_containerSize;
bool m_hasSetContainerSize;
};
Modified: trunk/Source/WebCore/svg/graphics/SVGImage.cpp (93439 => 93440)
--- trunk/Source/WebCore/svg/graphics/SVGImage.cpp 2011-08-19 21:37:27 UTC (rev 93439)
+++ trunk/Source/WebCore/svg/graphics/SVGImage.cpp 2011-08-19 21:40:27 UTC (rev 93440)
@@ -72,7 +72,7 @@
m_image = 0;
}
- virtual void invalidateContentsAndWindow(const IntRect& r, bool)
+ virtual void invalidateContentsAndWindow(const LayoutRect& r, bool)
{
if (m_image && m_image->imageObserver())
m_image->imageObserver()->changedInRect(m_image, r);
@@ -101,7 +101,7 @@
ASSERT(!m_chromeClient || !m_chromeClient->image());
}
-void SVGImage::setContainerSize(const IntSize& containerSize)
+void SVGImage::setContainerSize(const LayoutSize& containerSize)
{
if (containerSize.isEmpty())
return;
Modified: trunk/Source/WebCore/svg/graphics/SVGImage.h (93439 => 93440)
--- trunk/Source/WebCore/svg/graphics/SVGImage.h 2011-08-19 21:37:27 UTC (rev 93439)
+++ trunk/Source/WebCore/svg/graphics/SVGImage.h 2011-08-19 21:40:27 UTC (rev 93440)
@@ -30,6 +30,7 @@
#if ENABLE(SVG)
#include "Image.h"
+#include "LayoutTypes.h"
namespace WebCore {
@@ -48,7 +49,7 @@
virtual String filenameExtension() const;
- virtual void setContainerSize(const IntSize&);
+ virtual void setContainerSize(const LayoutSize&);
virtual bool usesContainerSize() const;
virtual bool hasRelativeWidth() const;
virtual bool hasRelativeHeight() const;