summaryrefslogtreecommitdiff
path: root/qutebrowser/misc/sessions.py
AgeCommit message (Collapse)Author
2021-12-03pylint: Enable else-if-usedpylint-2-12Florian Bruhin
2021-03-23Merge remote-tracking branch 'origin/pr/4545'Florian Bruhin
2021-02-16Check for QtWebEngine versions for session workaroundFlorian Bruhin
This means sessions need to be initialized after websettings, because initializing websettings also initializes QtWebEngine and thus qutescheme. This needs to happen before sessions.init() calls version.webengine_versions(). I don't think this should be a problem, as they are independent to each other. Fixes #5738 See #5359 Also switches sessions.init() to pathlib, see #176.
2021-01-26doc: Switch URLs to httpsFlorian Bruhin
2021-01-20Bump copyright yearsFlorian Bruhin
Closes #6015
2021-01-11Add objects.qapp to avoid needing to None-checkFlorian Bruhin
We know that QApplication.instance() will always be non-None for practical purposes, but the stubs now (correctly) declare it as Optional. See https://github.com/stlehmann/PyQt5-stubs/pull/126
2020-11-02scripts: Disallow blanket noqa/type ignoresFlorian Bruhin
2020-10-28mypy: use from-import style for typingTim Brown
Update files in `keyinput`, `mainwindow`, and `misc`. See #5396
2020-09-14Handle tab pinned status in AbstractTabFlorian Bruhin
This replaces TabbedBrowser.set_tab_pinned() with AbstractTab.set_pinned() and thus also allows us to set a tab as pinned without having to know which TabbedBrowser it belongs to. This also fixes a bug when :undo is used after closing a tab and then setting tabs_are_windows to true - we asked "self" (i.e. the TabbedBrowser the tab was closed in) to restore the tab's pinned status, but the tab wasn't actually part of that TabbedBrowser as it was opened in a new window after the undo.
2020-07-29Fix lintFlorian Bruhin
2020-07-29Merge remote-tracking branch 'origin/pr/4180' into completionFlorian Bruhin
2020-07-16Fix lintFlorian Bruhin
2020-07-16Handle SessionError when shutting down sessionsFlorian Bruhin
Fixes #810
2020-07-16Move session shutdown to sessions.pyFlorian Bruhin
2020-05-10mypy: Disallow incomplete defs globallyFlorian Bruhin
2020-05-10mypy: Use explicit "type: ignore[...]" ignoresFlorian Bruhin
See #5368
2020-05-10mypy: Fix typing for PyQIODeviceFlorian Bruhin
See #5368
2020-04-27Fix indentFlorian Bruhin
...whoops!
2020-04-27Add stop-gap measure for sessions with Qt 5.15Florian Bruhin
See #5359
2020-02-13Add history entry last visited time to session file.Jimmy
If loading old session files the entries with be 1601.01.01 which is apparently the ANSI (Windows?) epoch.
2020-01-13Move _load_session from app to sessionsFlorian Bruhin
2020-01-04Adjust copyrights for 2020Florian Bruhin
2019-12-08Merge branch 'master' of https://github.com/qutebrowser/qutebrowser into ↵Jay Kamat
jay/autosave-perf
2019-11-25Remove session-manager from objregFlorian Bruhin
See #640
2019-10-15mypy: check_untyped_defs for qutebrowser.miscFlorian Bruhin
2019-10-14Fix mypy issuesFlorian Bruhin
2019-10-13objreg: Set command_only for session-managerFlorian Bruhin
See #640
2019-10-13Fix mypy issuesFlorian Bruhin
2019-10-13Refactor shutdown to use signalsFlorian Bruhin
objreg improvements: - event-filter -> gone - save-manager -> -1 usage - crash-handler -> command-only - signal-handler -> gone - session-manager -> -1 usage See #640
2019-04-13Move single process check into utilitiy function.Jimmy
2019-04-13Move some session load stuff into separate method.Jimmy
For Mr. McCabe. > qutebrowser/misc/sessions.py:407:5: C901 'SessionManager.load' is too complex (14)
2019-04-13Don't load private sessions in single process mode.Jimmy
Refuse to load sessions with private windows in single process mode as we cannot support private windows there.
2019-03-26Add needed importJay Kamat
2019-03-26Merge branch 'jay/scroll-perf' into jay/autosave-perfJay Kamat
2019-03-13Eschew the extraneous elsesFlorian Bruhin
https://www.youtube.com/watch?v=JVVMMULwR4s&t=289
2019-03-01Clean up throttle codeJay Kamat
2019-03-01Merge branch 'master' of https://github.com/qutebrowser/qutebrowser into ↵Jay Kamat
jay/scroll-perf
2019-02-22Update copyright for 2019Jay Kamat
2019-01-27Throttle autosave requests to 60 secondsJay Kamat
Previously, yaml encoding and writing to disk was very expensive, which made page load very expensive. This PR sacrifices a bit of safety (if we get a crash, we may loose pages from the last 60 seconds) for a large reduction of disk throughput. Closes #4535
2019-01-27Add method to cancel in-flight throttle callsJay Kamat
2018-11-30Add cmdutils.Value instead of using count=True/win_id=TrueFlorian Bruhin
2018-11-30Move history (de)serializing to a private_api objectFlorian Bruhin
2018-11-29Move CommandError to api.cmdutilsFlorian Bruhin
2018-11-28Fix lintFlorian Bruhin
2018-11-28Renaem private attribute to is_privateFlorian Bruhin
2018-11-27Add docstringFlorian Bruhin
2018-11-26Complete partial annotationsFlorian Bruhin
Unfortunately we can't turn on mypy's --disallow-incomplete-defs (yet) due to https://github.com/python/mypy/issues/5954
2018-11-26mypy: Fix :session-saveFlorian Bruhin
We use a sentinel value for the argument so we can check whether the default was used. To express that in the type system, it needs a separate class.
2018-09-22Handle empty session files gracefullyFlorian Bruhin
There's still much more to do for #1926, but with this we at least handle one common case gracefully. No tests because test_sessions.py is still in a kinda bad place...
2018-07-02Add a wrapper around sipFlorian Bruhin
Starting with PyQt 5.11, the sip module now is bundled with PyQt as PyQt.sip. Having a qutebrowser.qt also helps with #3625, see #995