Unity - KHTML and WebKit

George Staikos staikos at kde.org
Wed Jul 12 22:56:14 BST 2006


Hi Everyone,

   I'm writing to fill in some more details about this "Unity" project.  It's 
just a codename for our port of WebKit "tip of tree" (what we call trunk) to 
Qt4.  This was an experiment we decided to try in Trysil to see just how easy 
it would be to merge with WebKit in this fashion, and how WebKit compares to 
our KHTML.  My experience told me that, with a group of 3-4 hackers, we could 
have a working demo in about 3 days.  This turned out to be very close to 
accurate, and so we have the code that was imported into SVN.

   Our approach was to modify the core of WebKit as little as possible and 
only add our own porting layer into the platform component.  As a webkit 
committer, I will be responsible for merging patches upstream while we 
continue with this fork of the WebKit code.  Apple has expressed interest in 
having as much as possible of this code merged upstream.  I think we can even 
put our cmake files and platform directory into the WebKit SVN.

   All in all, this simply means that we have a port of WebKit to Qt4.  The 
interesting part starts here.  We can wrap this port with a KPart and really 
compare it to KHTML in trunk.  If it turns out to be roughly equivalent from 
a technology point of view, then I think it would be great to start porting 
all of our recent work into WebKit.  I'm referring to the work done recently 
by Allan, Germain, and Maksim in particular.  If we were able to keep sync 
with WebKit (and possibly do some organizational shuffling), we would have a 
much larger developer base for our engine, while at the same time reducing 
the impact on our own development team.  I think this is a win all-around.  
In the future, if we don't like where WebKit is going, then we can re-fork, 
so we're never committed.

  In terms of organization, I would insist that we are equal partners with 
Apple and all other WebKit developers if we go down this road.  KHTML is as 
important to us as it is to them, and our contributions are just as 
significant.  I think we can work together as a team, and it's definitely 
worth a try.

  If anyone wants to join in, please have a look at the code in SVN.  The area 
to work on is the WebKit/WebCore/platform/qt/ directory.  Carefully consider 
any change that goes into any directory other than that since it will either 
be lost or need to be merged.  There is a test application installed in bin/ 
called testunity which actually has basic networking support via libcurl 
right now.

   Any other questions, please post to kfm-devel at .  Happy hacking!

-- 
George Staikos
KDE Developer				http://www.kde.org/
Staikos Computing Services Inc.		http://www.staikos.net/




More information about the kfm-devel mailing list