Home > GNOME, Igalia, WebKit > WebKit2 GTK+ MiniBrowser ported to GTK+ API!

WebKit2 GTK+ MiniBrowser ported to GTK+ API!

MiniBrowser is a small web browser application for testing WebKit2. MiniBrowser for the GTK+ port has been working for some time now, but it was implemented using the C-based WebKit2 API. WebKitGTK+ 1.7.1 introduced an initial high level GTK+ API for WebKit2 more similar to the current WebKit1 GTK+ API. This week, Igalia‘s WebKit team started to port the MiniBrowser code to use the new GTK+ API.

MiniBrowser running
MiniBrowser running

This new GTK+ API is far from complete compared to the WebKit1 API, but it’s already possible to implement a small application with basic features, and we have plans to create a webkit2 branch for epiphany soon. API is already documented in the code, but the html generation is not available yet. We are already working on it so that WebKitGTK+ 1.7.2 will generate the API documentation when compiled with –enable-gtk-doc and –enable-webkit2 and it will be available on the WebKitGTK+ website too.

Thanks to the multiprocess architecture, WebKit2GTK+ solves the problem of using flash (or any other plugin using GTK+2) with GTK+3. The UI process depends unconditonally on GTK+3 and the plugin process is always built with GTK+2. And of course, flash will never crash or block your web browser. Plugins are broken in WebKitGTK+ 1.7.1 due to a bug that has already been fixed, so in order to try it out you need to either wait until 1.7.2 is released or build WebKit from current git master.

MiniBrowser showing a youtube video
MiniBrowser showing a youtube video
Categories: GNOME, Igalia, WebKit Tags:
  1. bochecha
    November 9th, 2011 at 12:09 | #1

    > “and we have plans to create a webkit2 branch for epiphany soon”

    Please, when it’s starting to be usable, do blog about it. I’d love to jhbuild it and report a few bugs. :)

    Am I dreaming too much if I imagine the Gnome 3.4 release notes mentioning that Epiphany now uses WebKit2? :D

  2. November 12th, 2011 at 06:31 | #2

    Great! thanks for the share!

  3. Ben
    November 13th, 2011 at 08:59 | #3

    I put together a little browser with Webkit, Gtk+ and Glade, in C. It works and it’s small (20K compiled + 14K ui file), but there’s one bug that’s got me stumped:

    Whenever I try to get the currently selected notebook page (aka, tab; at the moment, I’ve not implemented a way to open more tabs) from an “icon-release” signal callback, it segfaults. There aren’t any compiler or run-time warnings, and the same exact callback is used for a button action without a segfault…it’s perplexing.

  4. April 29th, 2012 at 09:41 | #4

    Ben, did you checked the signal properties? it may send more arg than button action….

  1. December 4th, 2011 at 20:11 | #1
  2. December 7th, 2011 at 13:58 | #2
  3. December 8th, 2011 at 10:58 | #3
  4. January 27th, 2012 at 17:10 | #4
*