diff options
author | Florian Bruhin <me@the-compiler.org> | 2020-07-16 16:23:02 +0200 |
---|---|---|
committer | Florian Bruhin <me@the-compiler.org> | 2020-07-16 16:23:31 +0200 |
commit | b20a6487f886ebd9141834ddcde5351c99b9b35a (patch) | |
tree | f9e3b989bf498db1e35cbf40859f8b5a9ba4cc8b /qutebrowser/misc/sessions.py | |
parent | 13fc4604ba3eef6f42b45bf0e9b52d60419813bb (diff) | |
download | qutebrowser-b20a6487f886ebd9141834ddcde5351c99b9b35a.tar.gz qutebrowser-b20a6487f886ebd9141834ddcde5351c99b9b35a.zip |
Move session shutdown to sessions.py
Diffstat (limited to 'qutebrowser/misc/sessions.py')
-rw-r--r-- | qutebrowser/misc/sessions.py | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/qutebrowser/misc/sessions.py b/qutebrowser/misc/sessions.py index 52a66b1a0..37fd0a4ba 100644 --- a/qutebrowser/misc/sessions.py +++ b/qutebrowser/misc/sessions.py @@ -27,7 +27,7 @@ import typing import glob import shutil -from PyQt5.QtCore import QUrl, QObject, QPoint, QTimer, pyqtSlot +from PyQt5.QtCore import QUrl, QObject, QPoint, QTimer from PyQt5.QtWidgets import QApplication import yaml @@ -80,8 +80,18 @@ def init(parent=None): session_manager = SessionManager(base_path, parent) -@pyqtSlot() -def shutdown(): +def shutdown(session: typing.Optional[ArgType], last_window: bool) -> None: + """Handle a shutdown by saving sessions and removing the autosave file.""" + if session_manager is None: + return + + if session is not None: + session_manager.save(session, last_window=last_window, + load_next_time=True) + elif config.val.auto_save.session: + session_manager.save(default, last_window=last_window, + load_next_time=True) + session_manager.delete_autosave() |