flicker problem on Gtk+/DirectFB
- From: wangtao <wangtao adi gmail com>
- To: gtk-list gnome org
- Subject: flicker problem on Gtk+/DirectFB
- Date: Wed, 22 Apr 2009 17:57:29 +0800
I am running GGL(Google Gadgets for Linux) based Gadget on my embedded linux platform, and it runs on Gtk+(gtk+-2.12.10)/DirectFB, now i encounter some flicker problem as follows:
1, If i move my mouse from one button to another button on the gadget, the gadget flickers
2, If i move the mouse off the gadget, or make mouse entry into the gadget, it flickers too
I've made some investigations:
1, the gadget flickers for redrawing, since we got the expose-event
2, the redrawing process is as follows:
1) calling gdk_window_begin_paint_region() in gdk/gdkwindow.c
2) then gdk_window_impl_directfb_begin_paint_region() in gdk/directfb/gdkwindow-directfb.c
3) next GGL expose-event handler is called
4) then run gdk_window_end_paint() in gdk/gdkwindow.c
5) last gdk_window_impl_directfb_end_paint() in gdk/directfb/gdkwindow-directfb.c
3, I tried to make some modifications but without getting any positive results
My question is:
1, it flickers for repeating redrawing the black-background and the gadget, agreed?
2, it is the expose-event that triggers the redrawing process, but we just move the mouse? or why expose event take places together with mouse motion event?
3, is it for the gtk_propagate_event() in gtk/gtkmain.c? how to fix it?
4, seems clipbox was employed to remove flicker in gdk_window_begin_paint_region() in gdk/gdkwindow.c, but without any disposal in gdk_window_impl_directfb_begin_paint_region() in gdk/directfb/gdkwindow-directfb.c, is it defective?
Please do me the favor solving the issue:)
] [Thread Prev