Porting Yelp to WebKit2Gtk+, three months as an igalian

por Marcos Chavarría Teijeiro

It have been a while since I write a post here and so many things has happened on my life. I have ended my second GSoC, I had an internship with Igalia and I’m participating on the organization of a music festival!

But I’m here to talk about my Igalia internship. The work I should did during this internship was to port a GNOME app from WebKitGtk+ to WebKit2Gtk+ and write a tutorial about how to do the port. The chosen app was Yelp. During this year GUADEC people talk about the need of porting this app and both my mentors and me thought that it would be a really interesting app to port.

For those who don’t know what Yelp is, Yelp is the GNOME help viewer. The implementation of it includes a WebView that shows the help document. The idea is transform the XML documents to HTML using XSLT and then show the result. I have submit the port patches to bugzilla and they are waiting to be reviewed. The most difficult part of the port was dealing with the multiprocess architecture of WebKit2 so we have to deal with DOM in a different process from the WebView process. This is something that makes more difficulta to port certain apps but it could be solved with different techniques.

Appart from porting Yelp, I submit a patch to WebKit2Gtk+. I expose some part of the API to could check if the clicked element corresponds to a selected area or not. Working with the WebKit code has been a really challenging and cool experience that I want to repeat. When I have time I would end my work on this patch to enable improve plugin support at WebKit.

The tutorial I made to help people to port Yelp can be found here. In addition when I ended my Yelp port I also worked on porting Sushi and Bijiben. Sushi port is finished (it was a really trivial port) and Bijiben port had been cancelled due to the fact that it would probably be refactored to use a TextView instead of WebView.

To end I have to thank to Igalia to give this huge opportunity of working on such a awesome company. I specially want to thank my two mentors, Carlos Lopez and Carlos García for the help they provide me during this time. During the Brno GUADEC somebody told me that Igalia was one-of-a-kind company and I totally agree, the atmosphere is great and the way of working they have is unique. I’m really proud of could be an igalian for these three months. Thank you Igalia!!