+Fri Dec 18 01:32:59 1998 Tim Janik <timj@gtk.org>
+
+ * gtk/gtkmain.c (gtk_main): added gdk_flush() after g_main_run(), so we
+ get the original behaviour back, i.e. the event queue needs to be flushed
+ after a main loop has been quitted.
+ (gtk_main): add/remove the current main loop to/from the main loop
+ before/after init/quit functions have been exected to preserve the
+ original gtk_main_quit() behaviour.
+
+Thu Dec 17 23:48:29 1998 Tim Janik <timj@gtk.org>
+
+ * gdk/gdkevents.c (gdk_events_init): changed argument order in call
+ to g_main_add_poll() to match recent glib changes.
+
Thu Dec 17 20:33:28 1998 Owen Taylor <otaylor@redhat.com>
* gtk-config.in: Add @INTLLIBS@.
+Fri Dec 18 01:32:59 1998 Tim Janik <timj@gtk.org>
+
+ * gtk/gtkmain.c (gtk_main): added gdk_flush() after g_main_run(), so we
+ get the original behaviour back, i.e. the event queue needs to be flushed
+ after a main loop has been quitted.
+ (gtk_main): add/remove the current main loop to/from the main loop
+ before/after init/quit functions have been exected to preserve the
+ original gtk_main_quit() behaviour.
+
+Thu Dec 17 23:48:29 1998 Tim Janik <timj@gtk.org>
+
+ * gdk/gdkevents.c (gdk_events_init): changed argument order in call
+ to g_main_add_poll() to match recent glib changes.
+
Thu Dec 17 20:33:28 1998 Owen Taylor <otaylor@redhat.com>
* gtk-config.in: Add @INTLLIBS@.
+Fri Dec 18 01:32:59 1998 Tim Janik <timj@gtk.org>
+
+ * gtk/gtkmain.c (gtk_main): added gdk_flush() after g_main_run(), so we
+ get the original behaviour back, i.e. the event queue needs to be flushed
+ after a main loop has been quitted.
+ (gtk_main): add/remove the current main loop to/from the main loop
+ before/after init/quit functions have been exected to preserve the
+ original gtk_main_quit() behaviour.
+
+Thu Dec 17 23:48:29 1998 Tim Janik <timj@gtk.org>
+
+ * gdk/gdkevents.c (gdk_events_init): changed argument order in call
+ to g_main_add_poll() to match recent glib changes.
+
Thu Dec 17 20:33:28 1998 Owen Taylor <otaylor@redhat.com>
* gtk-config.in: Add @INTLLIBS@.
+Fri Dec 18 01:32:59 1998 Tim Janik <timj@gtk.org>
+
+ * gtk/gtkmain.c (gtk_main): added gdk_flush() after g_main_run(), so we
+ get the original behaviour back, i.e. the event queue needs to be flushed
+ after a main loop has been quitted.
+ (gtk_main): add/remove the current main loop to/from the main loop
+ before/after init/quit functions have been exected to preserve the
+ original gtk_main_quit() behaviour.
+
+Thu Dec 17 23:48:29 1998 Tim Janik <timj@gtk.org>
+
+ * gdk/gdkevents.c (gdk_events_init): changed argument order in call
+ to g_main_add_poll() to match recent glib changes.
+
Thu Dec 17 20:33:28 1998 Owen Taylor <otaylor@redhat.com>
* gtk-config.in: Add @INTLLIBS@.
+Fri Dec 18 01:32:59 1998 Tim Janik <timj@gtk.org>
+
+ * gtk/gtkmain.c (gtk_main): added gdk_flush() after g_main_run(), so we
+ get the original behaviour back, i.e. the event queue needs to be flushed
+ after a main loop has been quitted.
+ (gtk_main): add/remove the current main loop to/from the main loop
+ before/after init/quit functions have been exected to preserve the
+ original gtk_main_quit() behaviour.
+
+Thu Dec 17 23:48:29 1998 Tim Janik <timj@gtk.org>
+
+ * gdk/gdkevents.c (gdk_events_init): changed argument order in call
+ to g_main_add_poll() to match recent glib changes.
+
Thu Dec 17 20:33:28 1998 Owen Taylor <otaylor@redhat.com>
* gtk-config.in: Add @INTLLIBS@.
+Fri Dec 18 01:32:59 1998 Tim Janik <timj@gtk.org>
+
+ * gtk/gtkmain.c (gtk_main): added gdk_flush() after g_main_run(), so we
+ get the original behaviour back, i.e. the event queue needs to be flushed
+ after a main loop has been quitted.
+ (gtk_main): add/remove the current main loop to/from the main loop
+ before/after init/quit functions have been exected to preserve the
+ original gtk_main_quit() behaviour.
+
+Thu Dec 17 23:48:29 1998 Tim Janik <timj@gtk.org>
+
+ * gdk/gdkevents.c (gdk_events_init): changed argument order in call
+ to g_main_add_poll() to match recent glib changes.
+
Thu Dec 17 20:33:28 1998 Owen Taylor <otaylor@redhat.com>
* gtk-config.in: Add @INTLLIBS@.
+Fri Dec 18 01:32:59 1998 Tim Janik <timj@gtk.org>
+
+ * gtk/gtkmain.c (gtk_main): added gdk_flush() after g_main_run(), so we
+ get the original behaviour back, i.e. the event queue needs to be flushed
+ after a main loop has been quitted.
+ (gtk_main): add/remove the current main loop to/from the main loop
+ before/after init/quit functions have been exected to preserve the
+ original gtk_main_quit() behaviour.
+
+Thu Dec 17 23:48:29 1998 Tim Janik <timj@gtk.org>
+
+ * gdk/gdkevents.c (gdk_events_init): changed argument order in call
+ to g_main_add_poll() to match recent glib changes.
+
Thu Dec 17 20:33:28 1998 Owen Taylor <otaylor@redhat.com>
* gtk-config.in: Add @INTLLIBS@.
event_poll_fd.fd = connection_number;
event_poll_fd.events = G_IO_IN;
- g_main_add_poll (-10, &event_poll_fd);
+ g_main_add_poll (&event_poll_fd, -10);
/* This is really crappy. We have to look into the display structure
* to find the base resource id. This is only needed for recording
event_poll_fd.fd = connection_number;
event_poll_fd.events = G_IO_IN;
- g_main_add_poll (-10, &event_poll_fd);
+ g_main_add_poll (&event_poll_fd, -10);
/* This is really crappy. We have to look into the display structure
* to find the base resource id. This is only needed for recording
gtk_widget_show (list_hbox);
/* The directories clist */
-
dir_title[0] = _("Directories");
dir_title[1] = NULL;
filesel->dir_list = gtk_clist_new_with_titles (1, (gchar**) dir_title);
GList *tmp_list;
GList *functions;
GtkInitFunction *init;
-
GMainLoop *loop;
- GSList *tmp_node;
gtk_main_loop_level++;
+ loop = g_main_new (TRUE);
+ main_loops = g_slist_prepend (main_loops, loop);
+
tmp_list = functions = init_functions;
init_functions = NULL;
g_free (init);
}
g_list_free (functions);
-
- loop = g_main_new ();
- main_loops = g_slist_prepend (main_loops, loop);
-
- GDK_THREADS_LEAVE ();
- g_main_run (loop);
- GDK_THREADS_ENTER ();
-
- g_main_destroy (loop);
- tmp_node = main_loops;
- main_loops = g_slist_remove_link (main_loops, main_loops);
- g_slist_free_1 (tmp_node);
+ if (g_main_is_running (main_loops->data))
+ {
+ GDK_THREADS_LEAVE ();
+ g_main_run (loop);
+ GDK_THREADS_ENTER ();
+ gdk_flush ();
+ }
if (quit_functions)
{
work->next = quit_functions;
quit_functions = work;
}
+
+ gdk_flush ();
}
+ main_loops = g_slist_remove (main_loops, loop);
+
+ g_main_destroy (loop);
+
gtk_main_loop_level--;
}
void
gtk_main_quit (void)
{
+ g_return_if_fail (main_loops != NULL);
+
g_main_quit (main_loops->data);
}