diff options
author | Jan-Michael Brummer <jan.brummer@tabos.org> | 2020-02-13 19:46:27 +0000 |
---|---|---|
committer | Michael Catanzaro <mcatanzaro@gnome.org> | 2020-02-13 20:37:28 +0000 |
commit | 2783a4acfa8214693c793a759ed20029d7b921c3 (patch) | |
tree | 437a66320df4cf349c4d9acce8b8ce3b4752959c | |
parent | e6c9e9d12e09fb6deb7e3b70776efeebf94fcc0c (diff) | |
download | epiphany-2783a4acfa8214693c793a759ed20029d7b921c3.tar.gz |
Do not show tab open warning during session closing
Fixes: https://gitlab.gnome.org/GNOME/epiphany/issues/1093
(cherry picked from commit 2c0125617f05411de8a487887a184ac72a716388)
-rw-r--r-- | src/ephy-session.c | 6 | ||||
-rw-r--r-- | src/ephy-session.h | 1 | ||||
-rw-r--r-- | src/ephy-window.c | 4 |
3 files changed, 11 insertions, 0 deletions
diff --git a/src/ephy-session.c b/src/ephy-session.c index 6e6033530..c3b9cfe6a 100644 --- a/src/ephy-session.c +++ b/src/ephy-session.c @@ -1771,3 +1771,9 @@ ephy_session_clear (EphySession *session) ephy_session_save (session); } + +gboolean +ephy_session_is_closing (EphySession *session) +{ + return session->closing; +} diff --git a/src/ephy-session.h b/src/ephy-session.h index c4d82520c..c4ce61fa7 100644 --- a/src/ephy-session.h +++ b/src/ephy-session.h @@ -69,5 +69,6 @@ gboolean ephy_session_get_can_undo_tab_closed (EphySession *session); void ephy_session_clear (EphySession *session); +gboolean ephy_session_is_closing (EphySession *session); G_END_DECLS diff --git a/src/ephy-window.c b/src/ephy-window.c index f3557a954..f69010038 100644 --- a/src/ephy-window.c +++ b/src/ephy-window.c @@ -4249,6 +4249,8 @@ ephy_window_check_modified_forms (EphyWindow *window) gboolean ephy_window_close (EphyWindow *window) { + EphySession *session; + /* We ignore the delete_event if the disable_quit lockdown has been set */ if (g_settings_get_boolean (EPHY_SETTINGS_LOCKDOWN, @@ -4269,8 +4271,10 @@ ephy_window_close (EphyWindow *window) return FALSE; } + session = ephy_shell_get_session (ephy_shell_get_default ()); if (ephy_shell_get_n_windows (ephy_shell_get_default ()) > 1 && gtk_notebook_get_n_pages (window->notebook) > 1 && + !ephy_session_is_closing (session) && !confirm_close_with_multiple_tabs (window)) { /* stop window close */ return FALSE; |