diff --git a/qutebrowser/browser/webengine/webengineelem.py b/qutebrowser/browser/webengine/webengineelem.py index 8c48d0762..5f90fd5ca 100644 --- a/qutebrowser/browser/webengine/webengineelem.py +++ b/qutebrowser/browser/webengine/webengineelem.py @@ -32,10 +32,10 @@ class WebEngineElement(webelem.AbstractWebElement): """A web element for QtWebEngine, using JS under the hood.""" - def __init__(self, js_dict, run_js_callable): + def __init__(self, js_dict, tab): self._id = js_dict['id'] self._js_dict = js_dict - self._run_js = run_js_callable + self._tab = tab def __eq__(self, other): if not isinstance(other, WebEngineElement): @@ -106,7 +106,7 @@ class WebEngineElement(webelem.AbstractWebElement): """ # FIXME:qtwebengine what to do about use_js with WebEngine? js_code = javascript.assemble('webelem', 'set_text', self._id, text) - self._run_js(js_code) + self._tab.run_js_async(js_code) def run_js_async(self, code, callback=None): """Run the given JS snippet async on the element.""" diff --git a/qutebrowser/browser/webengine/webenginetab.py b/qutebrowser/browser/webengine/webenginetab.py index e79ed4a54..430e3b45a 100644 --- a/qutebrowser/browser/webengine/webenginetab.py +++ b/qutebrowser/browser/webengine/webenginetab.py @@ -455,7 +455,7 @@ class WebEngineTab(browsertab.AbstractTab): """ elems = [] for js_elem in js_elems: - elem = webengineelem.WebEngineElement(js_elem, self.run_js_async) + elem = webengineelem.WebEngineElement(js_elem, tab=self) elems.append(elem) callback(elems) @@ -471,7 +471,7 @@ class WebEngineTab(browsertab.AbstractTab): if js_elem is None: callback(None) else: - elem = webengineelem.WebEngineElement(js_elem, self.run_js_async) + elem = webengineelem.WebEngineElement(js_elem, tab=self) callback(elem) def find_all_elements(self, selector, callback, *, only_visible=False):