On Wed, 2005-02-23 at 14:31 +0500, Zeeshan Ali wrote: > Hello, > > On Wed, 23 Feb 2005 10:12:07 +0200, Olexiy Avramchenko > <[EMAIL PROTECTED]> wrote: > > When you create main loop with NULL as context parameter, main loop gets > > shared default context. Before you create your main loop, default > > context was populated with functions from gtk/gdk. > > > > The blocker is gdk_event_prepare (it just locks the global mutex), GLib > > code call it because the event source is not removed by gtk_main_quit. > > Thanks. Got it :) > > > You may: > > 1. Create separate context (this looks like the best solution). > > 2. Use gdk_threads_leave() before your g_main_loop_run() call. > I'll go for #1 i think.
Note that if you want to integrate your own callbacks with GTK+ GUI callbacks in the same thread (like repaint events), you need to do 1... you can only have one running contex per thread. And in fact, what gtk_main() looks like is basically: gtk_threads_leave(); g_main_loop_run(); gtk_threads_enter(); So it's very much the "normal" way things work. Regards, Owen _______________________________________________ gtk-app-devel-list mailing list gtk-app-devel-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list