[Webkit-unassigned] [Bug 25276] m_absoluteBounds hack should be removed from SVG renderers
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Fri Apr 17 17:38:55 PDT 2009
https://bugs.webkit.org/show_bug.cgi?id=25276
simon.fraser at apple.com changed:
What |Removed |Added
----------------------------------------------------------------------------
Attachment #29591|review? |review+
Flag| |
------- Comment #2 from simon.fraser at apple.com 2009-04-17 17:38 PDT -------
(From update of attachment 29591)
> +void RenderSVGModelObject::mapLocalToContainer(RenderBoxModelObject* repaintContainer, bool fixed , bool useTransforms, TransformState& transformState) const
> +{
> + ASSERT(!fixed); // We should have no fixed content in the SVG rendering tree.
> +
> + // FIXME: If we don't respect useTransforms we break SVG text rendering. Seems SVG text has its own broken translation hacks.
> + if (useTransforms)
> + transformState.applyTransform(localToParentTransform());
I think calling mapLocalToContainer() with useTransforms == false in SVG is
just wrong, and should never happen. We should either assert and
fix callers, or just force it to true.
> +// Copied from RenderBox, this method likely requires further refactoring to work easily for both SVG and CSS Box Model content.
> +IntRect RenderSVGModelObject::outlineBoundsForRepaint(RenderBoxModelObject* /*repaintContainer*/) const
> +{
> + IntRect box = enclosingIntRect(repaintRectInLocalCoordinates());
> + adjustRectForOutlineAndShadow(box);
> +
> + FloatQuad absOutlineQuad = localToAbsoluteQuad(FloatRect(box));
> + box = absOutlineQuad.enclosingBoundingBox();
Rather than follow the (broken: bug 25282) RenderBox, I think this should do:
FloatQuad containerOutlineQuad = localToContainerQuad(FloatRect(box),
repaintContainer)
r=me
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
More information about the webkit-unassigned
mailing list