summaryrefslogtreecommitdiff
path: root/src/gtkext/gtkextstatusbar.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/gtkext/gtkextstatusbar.c')
-rw-r--r--src/gtkext/gtkextstatusbar.c12
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();
+
}