diff --git a/qutebrowser/browser/commands.py b/qutebrowser/browser/commands.py index b0172d218..65efa2e43 100644 --- a/qutebrowser/browser/commands.py +++ b/qutebrowser/browser/commands.py @@ -572,6 +572,8 @@ class CommandDispatcher: @cmdutils.register(instance='mainwindow.tabs.cmd') def tab_focus_last(self): """Select the tab which was last focused.""" + if self._tabs.last_focused is None: + raise CommandError("No last focused tab!") idx = self._tabs.indexOf(self._tabs.last_focused) if idx == -1: raise CommandError("Last focused tab vanished!") diff --git a/qutebrowser/widgets/tabbedbrowser.py b/qutebrowser/widgets/tabbedbrowser.py index 0ba332d96..db7cb3162 100644 --- a/qutebrowser/widgets/tabbedbrowser.py +++ b/qutebrowser/widgets/tabbedbrowser.py @@ -268,6 +268,10 @@ class TabbedBrowser(TabWidget): tab = self.widget(idx) if tab is None: raise ValueError("invalid index {}!".format(idx)) + if tab is self.now_focused: + self.now_focused = None + if tab is self.last_focused: + self.last_focused = None last_close = config.get('tabbar', 'last-close') if self.count() > 1: url = tab.url()