aboutsummaryrefslogtreecommitdiffstats
path: root/shell/e-shell.c
diff options
context:
space:
mode:
Diffstat (limited to 'shell/e-shell.c')
-rw-r--r--shell/e-shell.c33
1 files changed, 9 insertions, 24 deletions
diff --git a/shell/e-shell.c b/shell/e-shell.c
index f1228045f0..c2cdafc89b 100644
--- a/shell/e-shell.c
+++ b/shell/e-shell.c
@@ -347,29 +347,6 @@ window_weak_notify (void *data,
}
}
-static EShellWindow *
-create_window (EShell *shell,
- const char *component_id,
- EShellWindow *template_window)
-{
- EShellPrivate *priv;
- EShellWindow *window;
-
- priv = shell->priv;
-
- window = E_SHELL_WINDOW (e_shell_window_new (shell, component_id));
-
- g_signal_connect (window, "delete_event", G_CALLBACK (window_delete_event_cb), shell);
- g_object_weak_ref (G_OBJECT (window), window_weak_notify, shell);
-
- shell->priv->windows = g_list_prepend (shell->priv->windows, window);
-
- g_signal_emit (shell, signals[NEW_WINDOW_CREATED], 0, window);
-
- return window;
-}
-
-
/* GObject methods. */
static void
@@ -809,10 +786,18 @@ e_shell_create_window (EShell *shell,
priv = shell->priv;
- window = create_window (shell, component_id, template_window);
+ window = E_SHELL_WINDOW (e_shell_window_new (shell, component_id));
+
+ g_signal_connect (window, "delete_event", G_CALLBACK (window_delete_event_cb), shell);
+ g_object_weak_ref (G_OBJECT (window), window_weak_notify, shell);
+ shell->priv->windows = g_list_prepend (shell->priv->windows, window);
+
+ g_signal_emit (shell, signals[NEW_WINDOW_CREATED], 0, window);
gtk_widget_show (GTK_WIDGET (window));
+ e_error_default_parent((GtkWindow *)window);
+
set_interactive (shell, TRUE);
return window;