From 2b72f43d9e25ee9d5690606585fdbfee63f681a1 Mon Sep 17 00:00:00 2001 From: Florian Bruhin Date: Sun, 12 Jul 2020 22:00:00 +0200 Subject: Load the correct URL in the Qt 5.15 session workaround If visiting an URL and then later using :back, we accidentally opened the last URL in the back/forward history rather than the current one. See #5359 Fixes #5566 (cherry picked from commit 8f073ee095c91748bf273620dcd51fcb4b2bc776) --- qutebrowser/browser/webengine/webenginetab.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/qutebrowser/browser/webengine/webenginetab.py b/qutebrowser/browser/webengine/webenginetab.py index dcadfad7b..0a1d86404 100644 --- a/qutebrowser/browser/webengine/webenginetab.py +++ b/qutebrowser/browser/webengine/webenginetab.py @@ -690,9 +690,15 @@ class WebEngineHistoryPrivate(browsertab.AbstractHistoryPrivate): if not items: return - url = items[-1].url - if (url.scheme(), url.host()) == ('qute', 'back') and len(items) >= 2: - url = items[-2].url + for i, item in enumerate(items): + if item.active: + cur_idx = i + break + + url = items[cur_idx].url + if (url.scheme(), url.host()) == ('qute', 'back') and cur_idx >= 1: + url = items[cur_idx - 1].url + self._tab.load_url(url) def load_items(self, items): -- cgit v1.2.3-54-g00ecf