[webkit-dev] Question about porting webkit

Oliver Hunt ojh16 at student.canterbury.ac.nz
Fri May 25 06:42:54 PDT 2007


I'll leave any discussion on the differences between WebKit and KHTML  
to other who know more about it than me.

But no, WebKit is in no way tied to Qt, and there are active ports of  
WebKit from Mac to Qt, GDK (or GTK, or something), and the WX toolkit.

Much of the design of the architecture of WebKit has changed over the  
last few years, and as part of this KWQ no longer exists.

At a very high level WebKit  now has 3 components
* JavaScriptCore -- the javascript interpreter (obviously ;) ), more  
or less completely cross platform
* WebCore -- The rendering and layout engine
* WebKit -- Provides the system api

JSC is basically crossplatform so i'm ignoring it

Only WebCore and WebKit require substantial platform work.  The WebKit  
component/module/thingy is the interface between JSC, WebCore, and the  
host platform, so by it's very nature is more or less entirely  
platform specific.  As time goes by we're trying to reduce the size of  
WebKit down into a much thinner layer to make porting WebKit (the  
library) easier.

WebCore is the really interesting bit, the majority of it is cross  
platform, however different platforms have different networking  
libraries, rendering libraries, etc.  So we have a number of  
abstractions that wrap platform specific API, eg. PlatformMouseEvent  
(to wrpa mouse evevnts), DragData (that maps platform drag and drop  
information), and so on to varying levels.  The rest of WebCore is  
then written in terms of those abstractions, so that is necessary to  
port webcore to another platofrm is to implement versions of those  
abstractions for the target paltform.  (though that's a big "all")

You can see most of this at work in the WebCore/platform directory -- http://trac.webkit.org/projects/webkit/browser/trunk/WebCore/platform

I've probably made a few mistakes, but i don't doubt that other people  
will swoop in to correct any wild fallacies on my part...

--Oliver

On May 25, 2007, at 4:23 AM, Jin, Yihua wrote:

> Hi all:
>    Based on my understanding, the webcore of webkit using KHTML as  
> its rendering engine,
> and KTHML is component from KDE/Qt, so is that means Apple's webkits  
> can be only port to platform
> that support KDE/Qt?
>    Another question is that I found both apple's webkit and Nokia's  
> S60 webkits contains KWQ, I'm puzzled
> what role does this part play and what's the relationship beween KWQ  
> and KHTML?
>
> thanks very much
>
>
>
> Best Regards, Yihua
> _______________________________________________
> webkit-dev mailing list
> webkit-dev at lists.webkit.org
> http://lists.webkit.org/mailman/listinfo/webkit-dev

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.macosforge.org/pipermail/webkit-dev/attachments/20070525/74bed351/attachment.html


More information about the webkit-dev mailing list