GTK for OLPC

From OLPC
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

This is the wiki page for the "GTK+ for OLPC" project, as a "Summer of Code" project. The student is Manu Cornet, mentor is Federico Mena-Quintero.

GTK theme/engine torturer

This "gtk-theme-torturer" is an application to detect performance issues in GTK themes/engines. Basically, for each of the most common widget types, it packs an instance of it in a container, and resizes/redraws it many, many times.

The current version of gtk-theme-torturer is [here http://www.manucornet.net/pub/olpc/gtk-theme-torturer/].

Screenshot :

Torture screenshot.png

More widget types to come!

Various enhancements

Cursor blinking

I began with this (probably quite simple to do). The purpose is to let the cursor blink for a few seconds, then just stay on and stop blinking (affects GtkEntry and GtkTextView).

This is done by :

  • Adding an XSetting called "gtk-cursor-blink-lifetime", which defaults to 5 seconds.
  • Adding a timeout with the corresponding lifetime each time the code asks the cursor to begin blinking. When the timeout is over, the cursor stays on.

A first version of the patch (both for GtkEntry and GtkTreeView) is available [here http://www.manucornet.net/pub/olpc/cursor_blink_lifetime.diff].

Simulation Tools

Right now : making tests with "Xephyr" to simulate the laptop's display.

GTK+ theme engine

Right now: learning how to write a GTK engine/theme. I'll probably begin by searching whether there's an existing theme close to what we want, and I can start from there.