Changes between Version 1 and Version 2 of WebKit/Overview


Ignore:
Timestamp:
Dec 29, 2019, 6:42:48 PM (4 years ago)
Author:
pulkomandy
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • WebKit/Overview

    v1 v2  
    11This page gives an overview of the [WebKit port](https://github.com/haiku/webkit), how it's done, where the useful sources are, etc.
    22
    3 Build instructions are in the repo README so I won't talk about it here.
     3There are two "versions" of WebKit called WebKiLegacy and "WebKit" or WebKit2. The former is a single-process architecture, where the whole browser is a single application. The latter is a multi-process system, where the browser is just a shell, and there are WebProcess (html parsing, etc) and NetworkProcess (http requests) programs running in the background to do the actual work, providing some sandboxing. Haiku is currently using the former, work is ongoing (in the webkit2 branch) for moving to WebKit2.
    44
    5 There are two "versions" of WebKit called WebKiLegacy and "WebKit" or WebKit2. The former is a single-process architecture, where the whole browser is a single application. The latter is a multi-process system, where the browser is just a shell, and there are WebProcess (html parsing, etc) and NetworkProcess (http requests) programs running in the background to do the actual work, providing some sandboxing. Haiku is currently using the former, work is ongoing (in the webkit2 branch) for moving to WebKit2.
     5= Build instructions =
     6
     7See the README in the repo for details (especially if you're using a gcc2 system), but the short version is:
     8
     9    Tools/Scripts/build-webkit
    610
    711= Source layout =
     
    2428
    2529There is usually little subclassing. Usually, a single .h file defines the API and each platform has the matching .cpp file implementing it. This means the .h may need to have some per platform #if when there are fields or methods specific to one or another platform. The idea is that this saves vtable overhead when there is going to be only one implementation compiled in.
    26