Re: [gtk-osx-users] [Gtk-osx-users] delayed drawing updates (not until lost focus) as compared to X11
- From: John Ralls <jralls ceridwen us>
- To: GTK+-2 OSX Users <gtk-osx-users lists sourceforge net>
- Subject: Re: [gtk-osx-users] [Gtk-osx-users] delayed drawing updates (not until lost focus) as compared to X11
- Date: Sat, 26 Nov 2011 13:28:52 -0800
On Nov 26, 2011, at 1:05 PM, Anthony J Bybell wrote:
> It's best to explain this one with some examples. Version-wise, I'm using the modulesets that was updated a couple of days ago. I have some workarounds in my code that fix this problem for me, but they appear to be hiding some behavior in GDK.
>
> svn co https://gtkwave.svn.sourceforge.net/svnroot/gtkwave gtkwave
> cd gtkwave/gtkwave3
> ./configure --disable-xz
> make
> cd src
> ./gtkwave ../examples/des.vzt ../examples/des.sav
>
> This should compile for you; I don't think you need to --disable-tcl. Click on the signals pane and try pressing cmd-a, shift-cmd-a and you will see that the signal names highlight and unhighlight as they should.
>
> cmd-q to exit.
>
> Now go into signalwindow.c function osx_timer() and then comment out the 4 consecutive lines around line 684 containing gtk_widget_hide()/gtk_widget_show().
>
> make
> ./gtkwave ../examples/des.vzt ../examples/des.sav
>
> Click on the signals pane and try pressing cmd-a, shift-cmd-a and you will see that the signal names update much later (if at all), or finally update when you move pointer focus out of the signals pane.
>
> For some reason I'm coming across delayed updates in gdk calls becoming visible to my signalarea and wavearea widgets.
>
> The same can be seen in a deprecated widget CTree (shown directly below the "SST" label):
> Look in treesearch_gtk2.c and search for the comment text "workaround" in the functions tree_[collapse|expand]_callback().
>
> With the gtk_widget_hide()/gtk_widget_show() present when you click on (+)/(-) the widget does what it should. Otherwise it doesn't update until the tree loses focus, or if it updates, the update is partial.
>
> I am wondering if there is some weirdness in that gdk_display_sync()/gdk_display_flush() actually need to do something, if there's a rendering pipeline that needs to be flushed, or there's a missing copy from a widget's backing store or whatever that is no problem with X11 but needs to be kicked when Quartz is used. At first I thought this simply was a CTree problem, but as I'm seeing it with widgets returned by gtk_drawing_area_new(), I'm wondering if it's something a little more fundamental concerning the interplay with GDK.
I think this is beyond the scope of this list. Please file a bug at
https://bugzilla.gnome.org/enter_bug.cgi?product=gtk%2B and component quartz.
Thanks.
Regards,
John Ralls
------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure
contains a definitive record of customers, application performance,
security threats, fraudulent activity, and more. Splunk takes this
data and makes sense of it. IT sense. And common sense.
http://p.sf.net/sfu/splunk-novd2d
_______________________________________________
Gtk-osx-users mailing list
Gtk-osx-users lists sourceforge net
https://lists.sourceforge.net/lists/listinfo/gtk-osx-users
[
Date Prev][Date Next] [
Thread Prev][Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]