[webkit-dev] Questions of WebKit Architecture

Joonwon Yi joonwon at veloxsoft.com
Tue Mar 25 21:55:22 PDT 2008

Hi, Seokbae.

I think there is no "official" graphic engine.
Moreover there is no "generic WebKit" or general porting layer. There are only real ports for specific platform/environments.

Your choice of a port as the base depends the characteristics of your platform, I think. (Do you mean some kind of Linux? or WIPI? ^^)

For API documents, you can see official documentation of Apple. It's very helpful. Of course you can see relavant sources of each ports.

- joonwon -

  ----- Original Message ----- 
  From: ¼Õ¼®¹è[´Ü¸»°³¹ß´ã´ç] 
  To: Alp Toker 
  Cc: webkit-dev at lists.webkit.org 
  Sent: Wednesday, March 26, 2008 1:31 PM
  Subject: Re: [webkit-dev] Questions of WebKit Architecture

  Thank you for your answer.
  It is really helpful for me. Thank you.

  Well, however, I still have some questions on the role of Cairo backend.

  As you described, Cairo is the "official" graphic backend of WebKit/GTK+.
  That means, without Cairo backend, you cannot make WebKit/GTK+ port as it is, if I understand it corrrectly.
  (Well, if you change the porting part, you might be able to, though)

  Well, however, I still have some questions on the role of Cairo backend in "generic" WebKit.
  Can we call "cairo" is the "official graphic engine" for the "generic WebKit" 
  or is it just one of the options of graphic backends for WebKit?

  I mean, let's say I want to port "generic" WebKit on a platform.
  (A platform is not well-known platform such as windwos, linux or Mac OS. 
   Let's say it's a proprietary, but has enough features for WebKit porting.)
  Then, if I port Cairo on that platform as well, does it mean I don't need to change WebKit code(or chage very little) of rendering part?

  In addtion to that, I have 2 more, irrelavant questions with Cairo.
  # Question 1
  If I port WebKit on a proprietary platform, which port would you recommand for me to choose as a base?

  # Question 2
  Are there any WebKit APIs documents available?
  Official one will be better, but seems like there's no officail documents on APIs, so if you can share your own notes, that would be very much appreciated.

  (Well, I think "\WebKit" has APIs.
  For example, Files in "\WebKit\win\Interfaces" are APIs for Windows port and "\WebKit\mac" has APIs for Mac OS, it seems.
  But, the numbers of APIs for each platform are not the same. And some of them look like internal APIs, not public APIs.
  Am I right?)

  Thank you for reading and answers in advance!!


  -----¿øº» ¸Þ½ÃÁö-----
  º¸³½ »ç¶÷: "Alp Toker" <alp at nuanti.com>
  º¸³½ ³¯Â¥: 2008-03-25 ¿ÀÈÄ 10:18:01
  ¹Þ´Â »ç¶÷: "¼Õ¼®¹è[´Ü¸»°³¹ß´ã´ç]" <sbson at kt.com>
  ÂüÁ¶: "webkit-dev at lists.webkit.org" <webkit-dev at lists.webkit.org>
  Á¦¸ñ: Re: Questions of WebKit Architecture

  ¼Õ¼®¹è[´Ü¸»°³¹ß´ã´ç] wrote:
  > Dear All,
  > I've recently started analyzing WebKit for porting it onto a proprietry
  > embedded platform.
  > I've tried to find documents about WebKit for about a week, but failed.
  > Would anyone please let me know where I can find the document about
  > WebKit architecture?
  > Especially, the picture of WebKit architure would be very helpful, if
  > there is any.
  > And in-depth analysis of WebCore (directory structures, components,
  > etc.) would be very helpful too.

  There isn't really much high-level documentation available.

  There are some basic diagrams of WebKit overall layout and WebKit/GTK+
  class design in these slides:


  > Thank you in advance!!
  > Seokbae
  > * P.S. BTW, Is cairo engine included in the WebKit? It doesn't look like
  > so, but someone told me it is so and I'm confused..
  > (Well, GTK+ port assumes cairo engine, but still it is not included in
  > the WebKit and cairo's not the official graphic engine for WebKit
  > expcept for SVG, isn't it?)

  The Cairo graphics backend used for all rendering including HTML
  content, SVG and Canvas in the GTK+ port is in WebKit SVN. We have a
  summary of the code modules (complete with links to the sources) in the


  The actual Cairo library isn't bundled with WebKit. You can download and
  install this separately from http://www.cairographics.org/

  You need Cairo 1.4 or newer and should ideally use the latest release.


  the browser experts


  webkit-dev mailing list
  webkit-dev at lists.webkit.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.webkit.org/pipermail/webkit-dev/attachments/20080326/e3e9514c/attachment.html 

More information about the webkit-dev mailing list