GTK Redraw Issues (was: Optimization team update (11/23 ~ 11/29))

John Lee john_lee at openmoko.com
Thu Dec 4 09:31:12 CET 2008


On Mon, Dec 01, 2008 at 09:10:25AM +1100, Carsten Haitzler wrote:
> On Sun, 30 Nov 2008 19:26:46 +0000 Thomas White <taw27 at cam.ac.uk> babbled:
> 
> > John Lee <john_lee at openmoko.com> wrote:
> > 
> > > Julian is working on the GTK redraw issue, please help him out.
> > 
> > Be sure to see my previous analysis sent upstream:
> > http://bugzilla.gnome.org/show_bug.cgi?id=561591
> > 
> > The problem arises because gtk_window_move_resize() temporarily freezes
> > redraws on the assmption that gtk_window_configure_event() will be
> > called shortly afterwards, but this never happens.  It could be that
> > the "expected" configure_event is actually happening _before_ the
> > move_resize, but I don't know what the expected order is.  In fact, I
> > think it might not even required to be in any particular order.
> > 
> > I think this arises from an interaction of the specific way
> > Enlightenment manages things combined with the assumption mentioned
> > above. This would also explain why running GTK programs on Neo via X
> > forwarding works for me (with xfwm4 on my laptop).  It also explains
> > what someone described to me on IRC: that with Debian the same problems
> > appeared only after changing WM to Enlightenment.  They were going to
> > add a comment to the ticket, but don't seem to have done so yet.
> 
> e definitely does things differently to other wm's - it has a state machine
> that it leaves to settle and then evaluates it on idle - and THEN sends fake
> events and configures windows etc. as such under ICCCM this is something the wm
> is free to do - not every configure request from an app will necessarily be
> honored.
> 

(reply to devel list)

#1946 will happen to qt as well.  if you start dialer first, switch
back to illume home, click dialer again, you will find the dialer
window incomplete (look at the number display), and the number won't
show up if you click the numpad.


- John



More information about the devel mailing list