GTK for OLPC: Difference between revisions

From OLPC
Jump to navigation Jump to search
(add ref to Google page)
Line 1: Line 1:
This is the wiki page for the "GTK+ for OLPC" project, as a "Summer of Code" project. The student is [http://www.manucornet.net Manu Cornet], mentor is [http://primates.ximian.com/~federico/ Federico Mena-Quintero].
This is the wiki page for the "GTK+ for OLPC" project, as a "Summer of Code" project. The student is [http://www.manucornet.net Manu Cornet], mentor is [http://primates.ximian.com/~federico/ Federico Mena-Quintero]. You can find the initial goals of the project on the [[OLPC Google Summer of Code]] page.


== GTK theme/engine torturer ==
== GTK theme/engine torturer ==

Revision as of 19:31, 14 June 2006

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. You can find the initial goals of the project on the OLPC Google Summer of Code page.

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.