From ac4186a0f079eaa35313fa79d958d704ca0eda59 Mon Sep 17 00:00:00 2001 From: Florian Bruhin Date: Wed, 15 Jun 2016 14:07:05 +0200 Subject: [PATCH] Tunnel :hint and :navigate --- qutebrowser/browser/commands.py | 13 ++++++++++--- qutebrowser/browser/hints.py | 6 +++--- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/qutebrowser/browser/commands.py b/qutebrowser/browser/commands.py index 99f0ddc28..faed80d68 100644 --- a/qutebrowser/browser/commands.py +++ b/qutebrowser/browser/commands.py @@ -479,15 +479,22 @@ class CommandDispatcher: cmdutils.check_exclusive((tab, bg, window), 'tbw') widget = self._current_widget() - frame = widget.page().currentFrame() url = self._current_url().adjusted(QUrl.RemoveFragment) - if frame is None: - raise cmdexc.CommandError("No frame focused!") + + if where in ['prev', 'next']: + frame = widget._widget.page().currentFrame() # FIXME + if frame is None: + raise cmdexc.CommandError("No frame focused!") + else: + frame = None + hintmanager = objreg.get('hintmanager', scope='tab', tab='current') if where == 'prev': + assert frame is not None hintmanager.follow_prevnext(frame, url, prev=True, tab=tab, background=bg, window=window) elif where == 'next': + assert frame is not None hintmanager.follow_prevnext(frame, url, prev=False, tab=tab, background=bg, window=window) elif where == 'up': diff --git a/qutebrowser/browser/hints.py b/qutebrowser/browser/hints.py index 4acdaad46..df3688b89 100644 --- a/qutebrowser/browser/hints.py +++ b/qutebrowser/browser/hints.py @@ -811,10 +811,10 @@ class HintManager(QObject): """ tabbed_browser = objreg.get('tabbed-browser', scope='window', window=self._win_id) - widget = tabbed_browser.currentWidget() - if widget is None: + tab = tabbed_browser.currentWidget() + if tab is None: raise cmdexc.CommandError("No WebView available yet!") - mainframe = widget.page().mainFrame() + mainframe = tab._widget.page().mainFrame() # FIXME if mainframe is None: raise cmdexc.CommandError("No frame focused!") mode_manager = objreg.get('mode-manager', scope='window',