Yesterday I tasked Dan Winship, who recently joined Red Hat on the OLPC project, with porting WebKit as a Sugar activity when he had free time. Today I came into the office to find an e-mail with a link to the activity. Here are some screen shots. Ignore the different scaling as we have tweaked XULRunner to better utilize the XO’s screen.
My initial reaction is it shows promise but needs some work to become really usable. On the plus side it uses on average 10 megs less in resident memory according to Dan’s testing. It also starts up five seconds faster. In my qualitative tests WebKit feels a bit more responsive when scrolling. The biggest problem with WebKit is the gtk port is just not finished yet and as such it is not a usable browser, but it is close.
Why are we looking at WebKit? In my mind it is another Open Source project that is just more aligned to our needs as a small and fast browser. The issue I see with the Mozilla comunity is that they are mainly chasing the fat desktop market. Every effort I have seen to make an embedded focused project based off of Mozilla has fallen in one aspect or another. WebKit’s specific claim to fame is to be small and light while not sacrificing needed functionality. For instance the Gtk port of WebKit uses cairo and pango which we need for nice antialiased and internationalized fonts. The last embedded mozilla project I talked to spent their time blaming cairo and pango for their performance problems. Instead of fixing their issues they opted to pull them both which gives you a slightly faster browser with no real internationalization support to talk of.
To be fair I have heard that Mozilla upstream is fixing the issues with cairo rendering in their next major release and have been getting friendlier when dealing with Linux distributions. This is all good signs of progress. The question is what is the direction Mozilla is looking to the future and will it line up with our requirements for low powered computing? Can a project as large as Mozilla serve both the embedded and power desktops equally well or do we look to other projects like WebKit which have more focused goals? For that matter, what is to say WebKit doesn’t spiral out of control and go in directions which are unsuitable for us?
For now we are using XULRunner, which works and has many benefits along with some pitfalls. We will keep an eye on the development of the WebKit Gtk port as it is shaping up to be a worthy contender. In the end it will come down to which offers the best experience on our platform.[read this post in: ar de es fr it ja ko pt ru zh-CN ]