I have been very busy during the last week, during the WebKitGTK+ Hackfest in A Coruña kindly made possible by Igalia, Collabora and the GNOME Foundation. The Igalia Office is a very nice place to be productive and relaxed. It was an exciting time and it was nice to be able to discuss and exchange ideas in-between lots of hacking.
I had the chance to see Xan, Gustavo, Benjamin and Reinout again while having the chance to meet Alejandro, Philippe, Behdad, Evan and Martin.
Special thanks to Xabier who picked me up from the airport and brought me back on the way home.
Now to the actual work on WebKitGTK+ that I've been doing.
- Asynchronous downloading with WebKitDownload. It was possible before but mostly coincidentally, and I updated a unit test to take it into account.
- Proxy handling is up to applications. After a discussion with Dan and others I filed bug in libsoup for supporting http_proxy by default.
- Finally Cache control API has landed, thanks to Alejandro. Being in the same room allowed for discussing some unclear aspects.
- groups are a concept in WebKit to group views, or tabs, within an application. They are important to let us have visited link handling, support for user style sheets and scripts (those are supported by Midori already, but through a JavaScript workaround) and DOM storage handling. I didn't have time to finish my patch, I will try to do that soon.
- I also worked on custom file choosing from applications. So that you can override WebKitGTK+'s file chooser and for instance use the same folder in all file choosers and customize it to your needs.
- I made spell check actually usable by fixing replacing the wrong word with the chosen suggestion.
- I worked on making spell check work on un-selected text the same way it works in for example AbiWord. WebCore expects a selection due to differences in behaviour on Macs.
- Small improvements to context menus.
- A new function to execute commands, for example to format text, and to track formatting, in rich text areas.
- I deprecated the old loading signals and updated the unit tests to use load-status.
During this time I hardly found room for Midori. Fortunately Alex filled in for me and worked on a number of performance tweaks and improvements to web cache and advertisement blocking.
Note Mario took pictures in the office. If you look hard you can spot me there.
Yours,
Christian