diff options
Diffstat (limited to 'composer')
-rw-r--r-- | composer/e-composer-private.c | 11 | ||||
-rw-r--r-- | composer/e-composer-private.h | 2 |
2 files changed, 13 insertions, 0 deletions
diff --git a/composer/e-composer-private.c b/composer/e-composer-private.c index 0ec579fa0e..1516b1533e 100644 --- a/composer/e-composer-private.c +++ b/composer/e-composer-private.c @@ -92,6 +92,7 @@ e_composer_private_init (EMsgComposer *composer) GtkWidget *container; GtkWidget *widget; GtkWidget *send_widget; + GtkWindow *window; const gchar *path; gchar *filename; gint ii; @@ -109,6 +110,11 @@ e_composer_private_init (EMsgComposer *composer) } + /* Each composer window gets its own window group. */ + window = GTK_WINDOW (composer); + priv->window_group = gtk_window_group_new (); + gtk_window_group_add_window (priv->window_group, window); + priv->charset_actions = gtk_action_group_new ("charset"); priv->composer_actions = gtk_action_group_new ("composer"); @@ -308,6 +314,11 @@ e_composer_private_dispose (EMsgComposer *composer) composer->priv->attachment_paned = NULL; } + if (composer->priv->window_group != NULL) { + g_object_unref (composer->priv->window_group); + composer->priv->window_group = NULL; + } + if (composer->priv->charset_actions != NULL) { g_object_unref (composer->priv->charset_actions); composer->priv->charset_actions = NULL; diff --git a/composer/e-composer-private.h b/composer/e-composer-private.h index 71ced95df1..df215d0cc8 100644 --- a/composer/e-composer-private.h +++ b/composer/e-composer-private.h @@ -91,6 +91,8 @@ struct _EMsgComposerPrivate { GtkWidget *header_table; GtkWidget *attachment_paned; + GtkWindowGroup *window_group; + GtkActionGroup *charset_actions; GtkActionGroup *composer_actions; |