summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortoofar <toofar@spalge.com>2023-09-10 17:32:57 +1200
committertoofar <toofar@spalge.com>2023-09-10 17:32:57 +1200
commit923d327c04a8650f582c03c657dc1717d9e6876c (patch)
tree586180864acfda2ac09c980896d42b76a86ea0db
parent04bd4117ade6924a9409448370f7d8bb39706660 (diff)
parentef18773a0d5359d24ea449907f23233fc226c8fc (diff)
downloadqutebrowser-923d327c04a8650f582c03c657dc1717d9e6876c.tar.gz
qutebrowser-923d327c04a8650f582c03c657dc1717d9e6876c.zip
Merge pull request #7888 from brightonanc/timer-repairs
Fixing timers accumulating duplicate slots
-rw-r--r--qutebrowser/browser/webengine/webenginetab.py4
-rw-r--r--qutebrowser/keyinput/modeparsers.py2
2 files changed, 3 insertions, 3 deletions
diff --git a/qutebrowser/browser/webengine/webenginetab.py b/qutebrowser/browser/webengine/webenginetab.py
index 54c576ebf..938e100ff 100644
--- a/qutebrowser/browser/webengine/webenginetab.py
+++ b/qutebrowser/browser/webengine/webenginetab.py
@@ -816,6 +816,8 @@ class WebEngineAudio(browsertab.AbstractAudio):
page.recentlyAudibleChanged.connect(self._delayed_recently_audible_changed)
self._tab.url_changed.connect(self._on_url_changed)
config.instance.changed.connect(self._on_config_changed)
+ self._silence_timer.timeout.connect(functools.partial(
+ self.recently_audible_changed.emit, False))
# WORKAROUND for recentlyAudibleChanged being emitted without delay from the moment
# that audio is dropped.
@@ -831,8 +833,6 @@ class WebEngineAudio(browsertab.AbstractAudio):
# Ignore all subsequent calls while the tab is muted with an active timer
if timer.isActive():
return
- timer.timeout.connect(
- functools.partial(self.recently_audible_changed.emit, recently_audible))
timer.start()
def set_muted(self, muted: bool, override: bool = False) -> None:
diff --git a/qutebrowser/keyinput/modeparsers.py b/qutebrowser/keyinput/modeparsers.py
index fdb085a1f..7db169097 100644
--- a/qutebrowser/keyinput/modeparsers.py
+++ b/qutebrowser/keyinput/modeparsers.py
@@ -84,6 +84,7 @@ class NormalKeyParser(CommandKeyParser):
self._inhibited = False
self._inhibited_timer = usertypes.Timer(self, 'normal-inhibited')
self._inhibited_timer.setSingleShot(True)
+ self._inhibited_timer.timeout.connect(self._clear_inhibited)
def __repr__(self) -> str:
return utils.get_repr(self)
@@ -113,7 +114,6 @@ class NormalKeyParser(CommandKeyParser):
timeout))
self._inhibited = True
self._inhibited_timer.setInterval(timeout)
- self._inhibited_timer.timeout.connect(self._clear_inhibited)
self._inhibited_timer.start()
@pyqtSlot()