diff options
-rw-r--r-- | mail/ChangeLog | 6 | ||||
-rw-r--r-- | mail/mail-accounts.c | 15 |
2 files changed, 18 insertions, 3 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog index be91569175..7d3d3d2f4d 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,3 +1,9 @@ +2003-03-11 Jeffrey Stedfast <fejj@ximian.com> + + * mail-accounts.c (account_add_clicked): Use + gtk_window_set_transient_for() on the druid with the settings + dialog as the parent window. + 2003-03-10 Jeffrey Stedfast <fejj@ximian.com> * mail-signature-editor.c (do_exit): Remove the yes/no diff --git a/mail/mail-accounts.c b/mail/mail-accounts.c index f47b6b4da9..fb06efd6ba 100644 --- a/mail/mail-accounts.c +++ b/mail/mail-accounts.c @@ -143,9 +143,15 @@ static void account_add_clicked (GtkButton *button, gpointer user_data) { MailAccountsTab *prefs = (MailAccountsTab *) user_data; + GtkWidget *parent; if (prefs->druid == NULL) { prefs->druid = (GtkWidget *) mail_config_druid_new (); + + parent = gtk_widget_get_toplevel ((GtkWidget *) prefs); + if (GTK_WIDGET_TOPLEVEL (parent)) + gtk_window_set_transient_for ((GtkWindow *) prefs->druid, (GtkWindow *) parent); + g_object_weak_ref ((GObject *) prefs->druid, (GWeakNotify) account_add_finished, prefs); @@ -183,10 +189,13 @@ account_edit_clicked (GtkButton *button, gpointer user_data) gtk_tree_model_get (model, &iter, 3, &account, -1); if (account) { - GtkWidget *window; + GtkWidget *parent; + + parent = gtk_widget_get_toplevel ((GtkWidget *) prefs); + parent = GTK_WIDGET_TOPLEVEL (parent) ? parent : NULL; + + prefs->editor = (GtkWidget *) mail_account_editor_new (account, (GtkWindow *) parent, prefs); - window = gtk_widget_get_ancestor (GTK_WIDGET (prefs), GTK_TYPE_WINDOW); - prefs->editor = (GtkWidget *) mail_account_editor_new (account, GTK_WINDOW (window), prefs); g_object_weak_ref ((GObject *) prefs->editor, (GWeakNotify) account_edit_finished, prefs); gtk_widget_show (prefs->editor); g_object_ref (prefs); |