From 7c03f08e089b9fe10648f76a228f6cfddf1deb69 Mon Sep 17 00:00:00 2001 From: Florian Bruhin Date: Sun, 12 Jul 2020 21:58:32 +0200 Subject: Move Qt 5.15 session workaround to its own function See #5359 (cherry picked from commit 0c43cbdede96c40133d9f993a2afabab21ea3015) --- qutebrowser/browser/webengine/webenginetab.py | 22 +++++++++++++++------- 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/qutebrowser/browser/webengine/webenginetab.py b/qutebrowser/browser/webengine/webenginetab.py index d56b7656b..dcadfad7b 100644 --- a/qutebrowser/browser/webengine/webenginetab.py +++ b/qutebrowser/browser/webengine/webenginetab.py @@ -681,15 +681,23 @@ class WebEngineHistoryPrivate(browsertab.AbstractHistoryPrivate): def deserialize(self, data): qtutils.deserialize(data, self._history) + def _load_items_workaround(self, items): + """WORKAROUND for session loading not working on Qt 5.15. + + Just load the current URL, see + https://github.com/qutebrowser/qutebrowser/issues/5359 + """ + if not items: + return + + url = items[-1].url + if (url.scheme(), url.host()) == ('qute', 'back') and len(items) >= 2: + url = items[-2].url + self._tab.load_url(url) + def load_items(self, items): if qtutils.version_check('5.15', compiled=False): - # WORKAROUND for https://github.com/qutebrowser/qutebrowser/issues/5359 - if items: - url = items[-1].url - if ((url.scheme(), url.host()) == ('qute', 'back') and - len(items) >= 2): - url = items[-2].url - self._tab.load_url(url) + self._load_items_workaround(items) return if items: -- cgit v1.2.3-54-g00ecf