[maemo-developers] gtk clutter tearing

From: Eero Tamminen eero.tamminen at nokia.com
Date: Mon Jan 11 17:19:18 EET 2010

ext Michael Cronenworth wrote:
> Eero Tamminen on 12/30/2009 04:09 AM wrote:
>> Incorrect.
> I guess there's some illegal black magic happening in-between compiz and 
> apps regardless of UI toolkit libraries. Apps such as dasher that 
> present rectangles and text at fast speeds do not present any tearing 
> when I have the *compositor* set to vsync. Firefox with the SmoothWheel 
> extension for liquid smooth scrolling is tear free until I turn vsync 
> off on the *compositor*.

If the related toolkit updates gets into same boxed XDamage event going
to the compositor and compositor blocks X updates to the composite
buffer while compositing it to screen, you don't get tearing.  In
practice this may be enough, especially on faster machines, but
I think it's more due to fortunate co-incidences than something
really being guaranteed by the (current Gtk) toolkit.

 > My own apps are tear free until I turn off..
 > you get the point, I hope.

Try for example pannable Gtk treeview with your own cell renderer
and add some suitable wait into that renderer to make sure that your
renderers' window update gets timewise separated from rest of
the treeview update and see whether you get tearing.

> Of course, I could get into a technical acronym-fest with you, but that 
> wouldn't be very helpful as real world examples would.
>  > If application updates to it's composite buffer aren't
>  > in sync with the compositor display updates, there's obviously
>  > a possibility for tearing.
> I don't think you understand how X works. :)

Hm. Do you? :-)

	- Eero

More information about the maemo-developers mailing list