diff --git a/qutebrowser/widgets/browser.py b/qutebrowser/widgets/browser.py index 610411501..27a1400b8 100644 --- a/qutebrowser/widgets/browser.py +++ b/qutebrowser/widgets/browser.py @@ -11,6 +11,7 @@ class TabbedBrowser(TabWidget): """A TabWidget with QWebViews inside""" cur_progress = pyqtSignal(int) # Progress of the current tab changed + cur_load_started = pyqtSignal() # Current tab started loading cur_load_finished = pyqtSignal(bool) # Current tab finished loading # Current tab changed scroll position cur_scroll_perc_changed = pyqtSignal(int, int) @@ -34,6 +35,8 @@ class TabbedBrowser(TabWidget): lambda *args: self._filter_signals(self.cur_progress, *args)) tab.loadFinished.connect( lambda *args: self._filter_signals(self.cur_load_finished, *args)) + tab.loadStarted.connect( + lambda *args: self._filter_signals(self.cur_load_started, *args)) tab.scroll_pos_changed.connect(self._scroll_pos_changed_handler) # FIXME should we really bind this to loadStarted? Sometimes the URL # isn't set correctly at this point, e.g. when doing diff --git a/qutebrowser/widgets/mainwindow.py b/qutebrowser/widgets/mainwindow.py index 9bb2e763f..0cd9212ec 100644 --- a/qutebrowser/widgets/mainwindow.py +++ b/qutebrowser/widgets/mainwindow.py @@ -34,6 +34,7 @@ class MainWindow(QMainWindow): self.status.resized.connect(self.completion.resize_to_bar) self.tabs.cur_progress.connect(self.status.prog.set_progress) self.tabs.cur_load_finished.connect(self.status.prog.load_finished) + self.tabs.cur_load_started.connect(lambda: self.status.prog.set_progress(0)) self.tabs.cur_scroll_perc_changed.connect(self.status.txt.set_perc) self.status.cmd.esc_pressed.connect(self.tabs.setFocus) self.status.cmd.hide_completion.connect(self.completion.hide)