]> Pileus Git - ~andy/gtk/commitdiff
added gdk_flush() after g_main_run(), so we get the original behaviour
authorTim Janik <timj@gtk.org>
Fri, 18 Dec 1998 02:23:48 +0000 (02:23 +0000)
committerTim Janik <timj@src.gnome.org>
Fri, 18 Dec 1998 02:23:48 +0000 (02:23 +0000)
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.

ChangeLog
ChangeLog.pre-2-0
ChangeLog.pre-2-10
ChangeLog.pre-2-2
ChangeLog.pre-2-4
ChangeLog.pre-2-6
ChangeLog.pre-2-8
gdk/gdkevents.c
gdk/x11/gdkevents-x11.c
gtk/gtkfilesel.c
gtk/gtkmain.c

index 8a530ea4bf3bd25558c9673a4d41640280a573ef..3648b32eb65340986075e9d81a9f48dc8d9b9dea 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,17 @@
+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@. 
index 8a530ea4bf3bd25558c9673a4d41640280a573ef..3648b32eb65340986075e9d81a9f48dc8d9b9dea 100644 (file)
@@ -1,3 +1,17 @@
+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@. 
index 8a530ea4bf3bd25558c9673a4d41640280a573ef..3648b32eb65340986075e9d81a9f48dc8d9b9dea 100644 (file)
@@ -1,3 +1,17 @@
+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@. 
index 8a530ea4bf3bd25558c9673a4d41640280a573ef..3648b32eb65340986075e9d81a9f48dc8d9b9dea 100644 (file)
@@ -1,3 +1,17 @@
+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@. 
index 8a530ea4bf3bd25558c9673a4d41640280a573ef..3648b32eb65340986075e9d81a9f48dc8d9b9dea 100644 (file)
@@ -1,3 +1,17 @@
+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@. 
index 8a530ea4bf3bd25558c9673a4d41640280a573ef..3648b32eb65340986075e9d81a9f48dc8d9b9dea 100644 (file)
@@ -1,3 +1,17 @@
+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@. 
index 8a530ea4bf3bd25558c9673a4d41640280a573ef..3648b32eb65340986075e9d81a9f48dc8d9b9dea 100644 (file)
@@ -1,3 +1,17 @@
+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@. 
index f473692a4eaa464170985184a446a9b103b43d8b..f96a680b6a7917079dc7f5e447c6bfc0e1895723 100644 (file)
@@ -127,7 +127,7 @@ gdk_events_init (void)
   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
index f473692a4eaa464170985184a446a9b103b43d8b..f96a680b6a7917079dc7f5e447c6bfc0e1895723 100644 (file)
@@ -127,7 +127,7 @@ gdk_events_init (void)
   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
index 0386dbbc4737757947ddd2815479e10f5c034d05..a60db8ea5cb445daef40a975446a8a84d4ce6be5 100644 (file)
@@ -408,7 +408,6 @@ gtk_file_selection_init (GtkFileSelection *filesel)
   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);
index ff595d51f035040c98c5bd6837f6b94876f9ac2e..55b6d2f0ff0711313f0e1ae486487c24b4d29005 100644 (file)
@@ -432,12 +432,13 @@ gtk_main (void)
   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;
   
@@ -450,19 +451,14 @@ gtk_main (void)
       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)
     {
@@ -496,8 +492,14 @@ gtk_main (void)
          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--;
 }
 
@@ -510,6 +512,8 @@ gtk_main_level (void)
 void
 gtk_main_quit (void)
 {
+  g_return_if_fail (main_loops != NULL);
+
   g_main_quit (main_loops->data);
 }