aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/empathy-main-window.c2
-rw-r--r--src/empathy-status-icon.c4
-rw-r--r--src/empathy.c7
3 files changed, 7 insertions, 6 deletions
diff --git a/src/empathy-main-window.c b/src/empathy-main-window.c
index c5f13dfaf..da8acf153 100644
--- a/src/empathy-main-window.c
+++ b/src/empathy-main-window.c
@@ -1433,7 +1433,7 @@ static void
main_window_chat_quit_cb (GtkAction *action,
EmpathyMainWindow *window)
{
- gtk_main_quit ();
+ gtk_widget_destroy (GTK_WIDGET (window));
}
static void
diff --git a/src/empathy-status-icon.c b/src/empathy-status-icon.c
index d6f5b2e46..3aa27a467 100644
--- a/src/empathy-status-icon.c
+++ b/src/empathy-status-icon.c
@@ -320,7 +320,9 @@ static void
status_icon_quit_cb (GtkAction *action,
EmpathyStatusIcon *icon)
{
- gtk_main_quit ();
+ EmpathyStatusIconPriv *priv = GET_PRIV (icon);
+
+ gtk_widget_destroy (priv->window);
}
static void
diff --git a/src/empathy.c b/src/empathy.c
index e1dab1f18..b73bf1b03 100644
--- a/src/empathy.c
+++ b/src/empathy.c
@@ -181,9 +181,6 @@ empathy_app_finalize (GObject *object)
g_free (self->preferences_tab);
- if (self->window != NULL)
- gtk_widget_destroy (self->window);
-
if (finalize != NULL)
finalize (object);
}
@@ -351,12 +348,14 @@ empathy_app_command_line (GApplication *app,
g_error_free (error);
}
- g_application_hold (G_APPLICATION (app));
self->activated = TRUE;
/* Setting up UI */
self->window = empathy_main_window_dup ();
+ gtk_application_add_window (GTK_APPLICATION (app),
+ GTK_WINDOW (self->window));
+
/* check if Shell is running */
dbus = tp_dbus_daemon_dup (&error);
g_assert_no_error (error);