Friday, December 29, 2006

WebKit for OLPCs Sugar

During the last two at the 23rd congress Daniel Molkentin and me have hacked on WebKit and to integrate with the OLPC GUI called sugar.

Thanks to Qt's GMainContext integration and GtkSocket/GtkPluck and Qt's XEmbed implementation embedding Qt widgets in Gtk+ is pretty much straight forward. So what we did was to use the WebKit/Qt implementation done by fellow KDE hackers and wrap it into a GtkWidget.

We have created a GtkMozEmbed like pygtk wrapper of a a Qt WebKit widget. So off to the important questions. Why did we do this?

Well personally I think WebKit just makes more sense for the OLPC. It is used today on small resource systems like PDAs or the Nokia Series 60 phone. From our past struggles with minimo WebKit is so much more resource friendly. I'm pretty sure the children will love it.

So where is the code? It is in a git repository:

OLPC stuff contains a sugar.Browser implemtation using WebKit/Qt, and web-activity just kills the hard tied gtkmozembed dependency which is a violation of the sugar.Browser abstraction.

Oh and this is my first published Gtk+ work and I would like to thank mickeyl for helping me the way through inheritance, parent classes and GtkBin/GtkAlignment issues.

rock on!


Anonymous said...

Why did you choose such bad hosting for your project?

Anonymous said...

It looks like I can't clone your git repositories...

[sf:antea] zecke-olpc $ git clone
Cannot get remote repository information.
Perhaps git-update-server-info needs to be run there?

Maybe you forgot to chmod +x the post-update hook.

-- S.F.