[webkit-dev] Partial SVG repaint
Eric Seidel
eric at webkit.org
Mon Oct 12 12:40:14 PDT 2009
Set a breakpoint in:
void ChromeClientQt::repaint(const IntRect& windowRect, bool
contentChanged, bool, bool)
And see if you're getting the correct rects in and out.
-eric
On Thu, Oct 8, 2009 at 4:47 PM, Patrick Roland Gansterer
<paroga at paroga.com> wrote:
>> SVG was designed to support this, it's just not been turned on yet.
> Can you please show me how i can turn it on. ;-)
>
> Currently i set a attribute in the SVG at ...
> http://trac.webkit.org/browser/trunk/WebCore/svg/SVGRectElement.cpp#L101
>
> .. this will shedule a layout via ..
> http://trac.webkit.org/browser/trunk/WebCore/rendering/RenderObject.h#L882
> http://trac.webkit.org/browser/trunk/WebCore/rendering/RenderObject.h#L976
> http://trac.webkit.org/browser/trunk/WebCore/rendering/RenderObject.cpp#L2017
> http://trac.webkit.org/browser/trunk/WebCore/page/FrameView.cpp#L1062
>
> http://trac.webkit.org/browser/trunk/WebCore/page/FrameView.cpp#L985
> http://trac.webkit.org/browser/trunk/WebCore/page/FrameView.cpp#L624
> http://trac.webkit.org/browser/trunk/WebCore/rendering/RenderSVGRoot.cpp#L102
> ...
> http://trac.webkit.org/browser/trunk/WebCore/rendering/RenderObject.cpp#L1166
>
> ... where the oldBounds and newBounds contain the coorect coordinates (at
> least for simple rects :).
>
> But the damageRect is the whole frame size in
> http://trac.webkit.org/browser/trunk/WebCore/rendering/RenderLayer.cpp#L2038
>
>
> I use the Qt-Port. Maybe the dirtyRegion is only wrong there, but i don't
> think so because e.g. Safari shows the same performance problem.
>
>
>> I'm not sure I would suggest such a change as your first change to WebKit
> though. It could have lots of fallout. :)
> I have a big perfromance problem with my dynamic SVG. So the only alternative
> is, that i create my own SVG renderer, which is not a real option.
>
> Patrick
>
More information about the webkit-dev
mailing list