So, I finally got to hacking on the cairo support for maemo-launcher. Thanks to Behdad and Owen for pointing me in the right direction.

My patch adds a method to booster_preinit which draws some demo text (“Maemo launcher”) to a image surface using pangocairo. Obviously this is enough to init most of the font stuff of pango and thus speeds up the application start-up for my test-case, the hello-world example from the GTK+ tutorial, by 50%. Again, I may be totally wrong with my results of course as times tend to be very small on a normal PC. I would be glad to hear from poeple using embedded devices if this is a real performance gain.

Start-up time Diagram

The only problem with the patch currently is that I use “Sans 10” as hardcoded value for the font. I have not yet figured out a good way to get the default font without opening a display.

Update: Obviously the font is totally irrelevant! I just removed the line and everything was as fast as before which means the upon layout drawing as font initialisation is done!

All this was done for Openismus in case anyone did not know!