diff options
Diffstat (limited to 'src/ephy-session.c')
-rw-r--r-- | src/ephy-session.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/ephy-session.c b/src/ephy-session.c index 0c52fe20e..9e489d07b 100644 --- a/src/ephy-session.c +++ b/src/ephy-session.c @@ -816,6 +816,8 @@ session_command_dispatch (EphySession *session) run_again = FALSE; } + g_application_release (G_APPLICATION (ephy_shell_get_application (ephy_shell_get_default ()))); + /* This unrefs the shell! */ session_command_free (cmd); @@ -1674,6 +1676,7 @@ ephy_session_add_window (EphySession *session, session->priv->tool_windows = g_list_append (session->priv->tool_windows, window); + gtk_application_add_window (GTK_APPLICATION (ephy_shell_get_application (ephy_shell_get_default ())), window); ephy_session_save (session, SESSION_CRASHED); } @@ -1694,6 +1697,7 @@ ephy_session_remove_window (EphySession *session, session->priv->tool_windows = g_list_remove (session->priv->tool_windows, window); + gtk_application_remove_window (GTK_APPLICATION (ephy_shell_get_application (ephy_shell_get_default ())), window); ephy_session_save (session, SESSION_CRASHED); } @@ -1800,6 +1804,8 @@ ephy_session_queue_command (EphySession *session, session_command_queue_next (session); + g_application_hold (G_APPLICATION (ephy_shell_get_application (ephy_shell_get_default ()))); + if (priv->resume_window != NULL) { gtk_window_present_with_time (GTK_WINDOW (priv->resume_window), |