From 115ae99796dd1988fe1ecc0e1fba90b4f982978d Mon Sep 17 00:00:00 2001 From: Michael Meeks Date: Wed, 19 May 2010 14:41:16 +0100 Subject: Find a better transient parent if we are not passed a window; fixes some transience issues in the calendar dialog re-layout. --- e-util/e-dialog-utils.c | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'e-util/e-dialog-utils.c') diff --git a/e-util/e-dialog-utils.c b/e-util/e-dialog-utils.c index 19d9030d30..832d1b844a 100644 --- a/e-util/e-dialog-utils.c +++ b/e-util/e-dialog-utils.c @@ -46,6 +46,7 @@ e_notice (gpointer parent, GtkMessageType type, const gchar *format, ...) va_start (args, format); str = g_strdup_vprintf (format, args); + dialog = gtk_message_dialog_new (NULL, GTK_DIALOG_DESTROY_WITH_PARENT, type, @@ -55,8 +56,11 @@ e_notice (gpointer parent, GtkMessageType type, const gchar *format, ...) va_end (args); g_free (str); + if (parent && !gtk_widget_is_toplevel (parent)) + parent = gtk_widget_get_toplevel (parent); if (parent) gtk_window_set_transient_for (GTK_WINDOW (dialog), parent); + gtk_dialog_run (GTK_DIALOG (dialog)); gtk_widget_destroy (dialog); } -- cgit v1.2.3