Re: Compositing managers spec

Carsten Haitzler (The Rasterman) <[email protected]>
Newsgroups gmane.comp.gnome.wm-spec
Organization You expect me to be organized?
Message-ID <[email protected]>
On Tue, 5 Feb 2008 14:23:47 +0100 Lubos Lunak <[email protected]> babbled:

> On Saturday 02 of February 2008, Carsten Haitzler wrote:
> > a lot of apps will update their window by drawing all the parts that
> > change. if they do not double-buffer theme selves they will draw directly
> > to the front-buffer. this means that to draw a button that goes from light
> > red to deep pink and looks pressed-in, it may very easily draw a new base
> > color, then draw the lines surrounding the box to make it look indented,
> > then redraw the label in the middle. in theory this can easily be half a
> > dozen or more damage events for the same region. if the CM simply draws on
> > every damage event - u'll get lots of extra compositing going on. if its
> > smart it will queue updates and wait until all damage events have been read
> > then update. if it gets really smart it may even delay a bit then as more
> > damage events may be on their way but not in the buffers yet. it may also
> > wait until vsync
> >
> > sometimes such extra delays that are artificially added beyond draining all
> > damage events could lead to bad sync. situations - eg - video players. they
> > will update the whole video at once anyway. so for apps hat are "smart"
> > about drawing and double-buffer themselves, and care about getting updates
> > up ASAP - set a property. for "legacy" or "stupid' apps - the CM can play
> > some heuristics games by adding small delays to gathering all damage events
> > to make sure it queues up as many as it can for 1 on-screen update to
> > improve smoothness of screen updates as much as possible.
> 
>  There is _NET_WM_SYNC_REQUEST, which is a way to detect when the client has 
> finished doing a repaint. It is unfortunately bound to ConfigureNotify 
> events, but I think that's not a real problem in practice.

we could recycle that - didn't think of that actually.

> -- 
> Lubos Lunak
> KDE developer
> --------------------------------------------------------------
> SUSE LINUX, s.r.o.   e-mail: [email protected] , [email protected]
> Lihovarska 1060/12   tel: +420 284 028 972
> 190 00 Prague 9      fax: +420 284 028 951
> Czech Republic       http//www.suse.cz
> _______________________________________________
> wm-spec-list mailing list
> [email protected]
> http://mail.gnome.org/mailman/listinfo/wm-spec-list
> 


-- 
------------- Codito, ergo sum - "I code, therefore I am" --------------
The Rasterman (Carsten Haitzler)    [email protected]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.