WebKitGTK+ Hackfest – Day G_MAXINT
A lot of progress was made in many areas, but I can try to give a brief summary:
- Gustavo and myself focused on fixing the form password saving regression during the first days. We wrote the basic code to hook into the webviews using JSC, store the auth data in the keyring, and refactored the Epiphany codebase a bit to be able to show infobars with the available options when submitting a form, like most browsers do. I know this was one of the most painful shortcomings of the browser for a lot of people, so I’m happy to put it behind us.
- Dan, Benjamin and others spent a lot of time hacking on libsoup. The Content-Encoding support landed in both 2.28.2 and master, which should make us render correctly some pages instead of showing gzip compressed garbage. Other things of interest were the GIO Socket support, a requisite for better SSL support (including certificate management) and the so-called URI Loader, which was redesigned and advanced enough for Dan to be able to write basic about: support for Epiphany/WebKit and that is a blocker feature for mail clients that need to support CID URIs (like Modest or Evolution).
- I spent some time finishing my refactoring of the work previously done in the DOM bindings bug. We are not there yet, but I have a quite smaller patch with a reduced scope (supporting a subset of the Node API) which already works and that I’ll try to upload when I’m back in Finland and that should be easier for the reviewers to accept as a first step.
- We enabled the page cache support in WebKitGTK+, which uncovered a series of interesting issues that we spent some time fixing up. On top of that Álex also landed the first step of better cache management APIs, a widely requested feature. Both will be important in providing faster and more responsive web content for our users.
- Oh my God, have to catch a train to Vigo soon and this list is endless!
- Evan and Behdad teamed up to work on a Harfbuzz font backend for WebKit. They were able to make it show some fancy text by the last day, and the current plan is to land this at some point in the first half of the next year, with WebKitGTK+ and Chromium/Linux sharing most of the implementation.
- Cody worked on using the new offscreen rendering support in GTK+ for our theming code. He made great progress, identifying some new features we need on GTK+, and hacking up a GtkOffscreenContainer that might end up going into GTK+ upstream and that was enough to make his proof of concept implementation actually show properly themed widgets in a page.
- Philippe kept rocking on the media side of things, as usual. He finished the HTML5 media control patch which Zan started, and made other nice fixes to our increasingly awesome media support.
- Martin Robinson worked on various cool things when he managed to find some free time in between his eternal quest to find his missing luggage (which AFAIK he only managed to get back on his way back to Barcelona!), including transparency support for WebViews and his improved DnD code.
- What else! We worked on accessibility bugs and random epiphany issues (custom User Agent support by Vincent Untz, send the proper Accept-Language HTTP headers on requests by Mario, respecting web context menus including a way to override them to show the epiphany menu…), making our regression list shorter and shorter, and other invisible but important things like making our binaries both smaller and faster to build.
- We reached some important conclusions on the gaming side of things, like Smash Brothers for the Wii being an insane game, proving that my Ryu totally owns Gustavo’s Ken or finding out about Benjamin’s past life as a Starcraft quasi-progamer. Speaking of games, don’t forget to enter the Konami Code in Epiphany 2.30 .
I’m probably forgetting things, but that’s about it. I think we all had a great time, great progress was made, and I want to thank Igalia, Collabora and the Foundation for their sponsoring and support for the event. Let’s do it again next year!