Need to merge with a more recent KSVG2 from kde Basically this just involves checking out both trees (WebCore and kde's) and using FileMerge to go through each one of the differences and pull changes into WebCore, or push them into KDE. You would do one or the other at a time. I generally start by pushing to KDE (since that's a smaller set). Eventually I bottle up those patches and send them off to rwlbuis and WildFox or just commit them myself. The second stage (and what this bug is about) is to pull changes from KDE to WebCore. Small patches are best. Pull a set of related changes, recompile, test, and then post a patch here for review.
Getting source from KDE is easy: http://developer.kde.org/source/anonsvn.html Specifically you would just do this: svn co svn://anonsvn.kde.org/home/kde/trunk/kdenonbeta/kdom svn co svn://anonsvn.kde.org/home/kde/trunk/kdenonbeta/kcanvas svn co svn://anonsvn.kde.org/home/kde/trunk/kdenonbeta/ksvg2
Created attachment 4382 [details] Shared is now a Template class Modifies Shared.h and TreeShared.h
Comment on attachment 4382 [details] Shared is now a Template class This will need to be pulled over along with all the header changes which change from: class Foo : public Shared; to: class Foo : public Shared<Foo>; Make sure you test the compile, and run-webkit-tests --svg.
Created attachment 4390 [details] Shared is now a Template class This patch modifies all the files that subclass or use the KDOM::Shared class. It also creates kdom/SharedPtr.h. It adds kdom/SharedPtr.h to the WebCore+SVG target and removes kdom/Shared.cpp from the target Run this patch from the kdom dir with `patch -p0`, it will handle the WebCore.xcodeproj modifs as well.
Comment on attachment 4390 [details] Shared is now a Template class Assuming this was regression and leak tested, this looks great! Thanks ever so much for taking the time to make this merge patch!
Comment on attachment 4390 [details] Shared is now a Template class Commited. Removing review flag now, as we're not quite caught up with KDE...
Created attachment 4531 [details] Patch for ksvg2 svn r470231 Form svn log in ksvg2 : r470231 | wildfox | 2005-10-13 13:56:19 +0200 (Thu, 13 Oct 2005) | 16 lines Part 2/2: * Commit Rob's patch aiming at killing SVGStyledElementImpl <-> SVGTransformableImpl, and SVGStyledElementImpl <-> SVGLocatableImpl 'this' ptr dynamic_casts. run-webkit-tests --svg --leaks reports no regression in svg rendering and a shift from 370 to 342 leaks in DumpKCanvasTree
Patch for ksvg2 svn r470231 creates 4 new files : SVGStyledTransformableElementImpl.* SVGStyledLocatableElementImpl.* These files need to be added to the webcore+svg target
Created attachment 4602 [details] Pulls many changes from kcanvas svn r475806 Patch for kcanvas svn r475806 Form svn log in kcanvas : r475806 | buis | 2005-10-30 18:12:14 +0100 (Sun, 30 Oct 2005) | 12 lines Important kcanvas changes: - have a seperate item for images, KCanvasImageItem.) not included in this patch - use relative transforms in kcanvas but offer a way to compute the whole ctm (getComputedTransform). This should have big benefits, next to nicer code it should make having svg markers in OS X easier. Porting is still needed to support markers, but we already see a change in : W3C-SVG-1.1/painting-marker-01-f W3C-SVG-1.1/painting-marker-02-f Like rob said, now it should not be hard to finalize the porting - to give better control add viewBox and preserveAspectRatio abilities into KCanvasContainer. - KCanvasContainer sets up its own viewport clip, not in SVGSVGElementImpl anymore. I also added a mapRect() method to KWQWMatrix After this patch, webcore cvs get much closer to ksvg2 svn and will make easier further merging.
Comment on attachment 4531 [details] Patch for ksvg2 svn r470231 Great patch. This will need some tweaks as it lands (due to the DOM changes I'm soon to land), but I'll take care of those.
Comment on attachment 4602 [details] Pulls many changes from kcanvas svn r475806 So there are some good ideas in this patch. I think that we need to talk about it a bit more after my DOM merger lands however.
Comment on attachment 4602 [details] Pulls many changes from kcanvas svn r475806 Looks good. Rolling in with my massive changes (as it gets rid of one last remaining dynamic_cast for me).
Ok, this bug has served it's purpose well. Both of Julien's patches are now landed. Time to close. Further mergers from kde should use separate bugs.