diff --git a/qutebrowser/browser/browsertab.py b/qutebrowser/browser/browsertab.py index 3f71fa074..ffc6c4db1 100644 --- a/qutebrowser/browser/browsertab.py +++ b/qutebrowser/browser/browsertab.py @@ -839,7 +839,7 @@ class AbstractTab(QWidget): process terminated. arg 0: A TerminationStatus member. arg 1: The exit code. - predicted_navigation: Emitted before we tell Qt to open a URL. + before_load_started: Emitted before we tell Qt to open a URL. """ window_close_requested = pyqtSignal() @@ -857,7 +857,7 @@ class AbstractTab(QWidget): add_history_item = pyqtSignal(QUrl, QUrl, str) # url, requested url, title fullscreen_requested = pyqtSignal(bool) renderer_process_terminated = pyqtSignal(TerminationStatus, int) - predicted_navigation = pyqtSignal(QUrl) + before_load_started = pyqtSignal(QUrl) def __init__(self, *, win_id: int, private: bool, parent: QWidget = None) -> None: @@ -888,7 +888,7 @@ class AbstractTab(QWidget): objreg.register('hintmanager', hintmanager, scope='tab', window=self.win_id, tab=self.tab_id) - self.predicted_navigation.connect(self._on_predicted_navigation) + self.before_load_started.connect(self._on_before_load_started) def _set_widget(self, widget: QWidget) -> None: # pylint: disable=protected-access @@ -943,11 +943,11 @@ class AbstractTab(QWidget): QApplication.postEvent(recipient, evt) @pyqtSlot(QUrl) - def _on_predicted_navigation(self, url: QUrl) -> None: + def _on_before_load_started(self, url: QUrl) -> None: """Adjust the title if we are going to visit a URL soon.""" qtutils.ensure_valid(url) url_string = url.toDisplayString() - log.webview.debug("Predicted navigation: {}".format(url_string)) + log.webview.debug("Going to start loading: {}".format(url_string)) self.title_changed.emit(url_string) @pyqtSlot(QUrl) @@ -1044,12 +1044,14 @@ class AbstractTab(QWidget): def load_status(self) -> usertypes.LoadStatus: return self._load_status - def _openurl_prepare(self, url: QUrl, *, predict: bool = True) -> None: + def _openurl_prepare(self, url: QUrl, *, + emit_before_load_started: bool = True) -> None: qtutils.ensure_valid(url) - if predict: - self.predicted_navigation.emit(url) + if emit_before_load_started: + self.before_load_started.emit(url) - def load_url(self, url: QUrl, *, predict: bool = True) -> None: + def load_url(self, url: QUrl, *, + emit_before_load_started: bool = True) -> None: raise NotImplementedError def reload(self, *, force: bool = False) -> None: diff --git a/qutebrowser/browser/webengine/webenginetab.py b/qutebrowser/browser/webengine/webenginetab.py index aa5b37aa8..98e3c1402 100644 --- a/qutebrowser/browser/webengine/webenginetab.py +++ b/qutebrowser/browser/webengine/webenginetab.py @@ -537,7 +537,7 @@ class WebEngineHistoryPrivate(browsertab.AbstractHistoryPrivate): def load_items(self, items): if items: - self._tab.predicted_navigation.emit(items[-1].url) + self._tab.before_load_started.emit(items[-1].url) stream, _data, cur_data = tabhistory.serialize(items) qtutils.deserialize_stream(stream, self._history) @@ -582,7 +582,7 @@ class WebEngineHistory(browsertab.AbstractHistory): return self._history.itemAt(i) def _go_to_item(self, item): - self._tab.predicted_navigation.emit(item.url()) + self._tab.before_load_started.emit(item.url()) self._history.goToItem(item) @@ -1134,18 +1134,20 @@ class WebEngineTab(browsertab.AbstractTab): self.zoom.set_factor(self._saved_zoom) self._saved_zoom = None - def load_url(self, url, *, predict=True): + def load_url(self, url, *, emit_before_load_started=True): """Load the given URL in this tab. Arguments: url: The QUrl to load. - predict: If set to False, predicted_navigation is not emitted. + emit_before_load_started: If set to False, before_load_started is + not emitted. """ if sip.isdeleted(self._widget): # https://github.com/qutebrowser/qutebrowser/issues/3896 return self._saved_zoom = self.zoom.factor() - self._openurl_prepare(url, predict=predict) + self._openurl_prepare( + url, emit_before_load_started=emit_before_load_started) self._widget.load(url) def url(self, *, requested=False): @@ -1366,9 +1368,9 @@ class WebEngineTab(browsertab.AbstractTab): log.config.debug( "Loading {} again because of config change".format( self._reload_url.toDisplayString())) - QTimer.singleShot(100, functools.partial(self.load_url, - self._reload_url, - predict=False)) + QTimer.singleShot(100, functools.partial( + self.load_url, self._reload_url, + emit_before_load_started=False)) self._reload_url = None if not qtutils.version_check('5.10', compiled=False): @@ -1407,12 +1409,12 @@ class WebEngineTab(browsertab.AbstractTab): self._show_error_page(url, str(error)) @pyqtSlot(QUrl) - def _on_predicted_navigation(self, url): + def _on_before_load_started(self, url): """If we know we're going to visit a URL soon, change the settings. This is a WORKAROUND for https://bugreports.qt.io/browse/QTBUG-66656 """ - super()._on_predicted_navigation(url) + super()._on_before_load_started(url) if not qtutils.version_check('5.11.1', compiled=False): self.settings.update_for_url(url) @@ -1490,7 +1492,7 @@ class WebEngineTab(browsertab.AbstractTab): page.loadFinished.connect(self._restore_zoom) page.loadFinished.connect(self._on_load_finished) - self.predicted_navigation.connect(self._on_predicted_navigation) + self.before_load_started.connect(self._on_before_load_started) # pylint: disable=protected-access self.audio._connect_signals() diff --git a/qutebrowser/browser/webkit/webkittab.py b/qutebrowser/browser/webkit/webkittab.py index d92c60609..3c853814a 100644 --- a/qutebrowser/browser/webkit/webkittab.py +++ b/qutebrowser/browser/webkit/webkittab.py @@ -519,7 +519,7 @@ class WebKitHistoryPrivate(browsertab.AbstractHistoryPrivate): def load_items(self, items): if items: - self._tab.predicted_navigation.emit(items[-1].url) + self._tab.before_load_started.emit(items[-1].url) stream, _data, user_data = tabhistory.serialize(items) qtutils.deserialize_stream(stream, self._history) @@ -562,7 +562,7 @@ class WebKitHistory(browsertab.AbstractHistory): return self._history.itemAt(i) def _go_to_item(self, item): - self._tab.predicted_navigation.emit(item.url()) + self._tab.before_load_started.emit(item.url()) self._history.goToItem(item) @@ -722,8 +722,9 @@ class WebKitTab(browsertab.AbstractTab): settings = widget.settings() settings.setAttribute(QWebSettings.PrivateBrowsingEnabled, True) - def load_url(self, url, *, predict=True): - self._openurl_prepare(url, predict=predict) + def load_url(self, url, *, emit_before_load_started=True): + self._openurl_prepare( + url, emit_before_load_started=emit_before_load_started) self._widget.load(url) def url(self, requested=False):