From 810e507da94bced85ff198d9e6cc13aab76cd65b Mon Sep 17 00:00:00 2001 From: Florian Bruhin Date: Wed, 16 Jul 2014 07:55:30 +0200 Subject: [PATCH] Add a focus_elem function to utils.webelem. --- qutebrowser/browser/commands.py | 3 +-- qutebrowser/utils/webelem.py | 11 +++++++++++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/qutebrowser/browser/commands.py b/qutebrowser/browser/commands.py index 5752d974f..24387d0d8 100644 --- a/qutebrowser/browser/commands.py +++ b/qutebrowser/browser/commands.py @@ -711,8 +711,7 @@ class CommandDispatcher: and do everything async. """ frame = self._tabs.currentWidget().page().currentFrame() - elem = frame.findFirstElement(webelem.SELECTORS[ - webelem.Group.focus]) + elem = webelem.focus_elem(frame) if elem.isNull(): raise CommandError("No element focused!") if not webelem.is_editable(elem): diff --git a/qutebrowser/utils/webelem.py b/qutebrowser/utils/webelem.py index e81b89067..7df94bdd5 100644 --- a/qutebrowser/utils/webelem.py +++ b/qutebrowser/utils/webelem.py @@ -247,3 +247,14 @@ def is_editable(elem): log.webview.debug("span with classes {} clicked!".format( elem.classes())) return False + + +def focus_elem(frame): + """Get the focused element in a webframe. + + FIXME: Add tests. + + Args: + frame: The QWebFrame to search in. + """ + return frame.findFirstElement(SELECTORS[Group.focus])