diff options
Diffstat (limited to 'src/gtkext/gtkextstatusbar.c')
-rw-r--r-- | src/gtkext/gtkextstatusbar.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/gtkext/gtkextstatusbar.c b/src/gtkext/gtkextstatusbar.c index cb6851d..79beda2 100644 --- a/src/gtkext/gtkextstatusbar.c +++ b/src/gtkext/gtkextstatusbar.c @@ -124,6 +124,8 @@ guint gtk_extended_status_bar_push(GtkExtStatusBar *bar, const gchar *message, g { guint result; /* Identifiant à retourner */ + gdk_threads_enter(); + result = gtk_statusbar_push(GTK_STATUSBAR(bar), bar->context, message); bar->msg_count++; @@ -143,6 +145,10 @@ guint gtk_extended_status_bar_push(GtkExtStatusBar *bar, const gchar *message, g } else gtk_widget_hide(GTK_WIDGET(bar->progress)); + gdk_flush (); + + gdk_threads_leave(); + return result; } @@ -203,6 +209,8 @@ void gtk_extended_status_bar_remove(GtkExtStatusBar *bar, guint id) { size_t i; /* Boucle de parcours */ + gdk_threads_enter(); + gtk_statusbar_remove(GTK_STATUSBAR(bar), bar->context, id); for (i = 0; i < bar->msg_count; i++) @@ -225,4 +233,8 @@ void gtk_extended_status_bar_remove(GtkExtStatusBar *bar, guint id) else gtk_widget_hide(GTK_WIDGET(bar->progress)); + gdk_flush (); + + gdk_threads_leave(); + } |