diff options
author | hiro <hiro@ee746299-78ed-0310-b773-934348b2243d> | 2006-02-02 06:24:28 +0000 |
---|---|---|
committer | hiro <hiro@ee746299-78ed-0310-b773-934348b2243d> | 2006-02-02 06:24:28 +0000 |
commit | 99c7931588e047db24b6c3bbfbcdcd462aa7763c (patch) | |
tree | 84698845874385b773bea3c489c4dc7a729ba8ee /src/gtkutils.c | |
parent | 9277f9708b7f5ce08def8758155fe37352a2e944 (diff) |
don't enable trayicon action if modal window exists. Present window on click if main window is obscured.
git-svn-id: svn://sylpheed.sraoss.jp/sylpheed/trunk@962 ee746299-78ed-0310-b773-934348b2243d
Diffstat (limited to 'src/gtkutils.c')
-rw-r--r-- | src/gtkutils.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/gtkutils.c b/src/gtkutils.c index cdeb4c26..691c3712 100644 --- a/src/gtkutils.c +++ b/src/gtkutils.c @@ -868,6 +868,26 @@ void gtkut_window_popup(GtkWidget *window) gtk_window_present(GTK_WINDOW(window)); } +gboolean gtkut_window_modal_exist(void) +{ + GList *window_list, *cur; + gboolean exist = FALSE; + + window_list = gtk_window_list_toplevels(); + for (cur = window_list; cur != NULL; cur = cur->next) { + GtkWidget *window = GTK_WIDGET(cur->data); + + if (GTK_WIDGET_VISIBLE(window) && + gtk_window_get_modal(GTK_WINDOW(window))) { + exist = TRUE; + break; + } + } + g_list_free(window_list); + + return exist; +} + void gtkut_widget_get_uposition(GtkWidget *widget, gint *px, gint *py) { gint x, y; |