diff options
author | Ryan Roden-Corrent <ryan@rcorre.net> | 2019-04-29 07:19:15 -0400 |
---|---|---|
committer | Florian Bruhin <me@the-compiler.org> | 2019-04-29 13:45:16 +0200 |
commit | e75d7ba5b03699dae20b2e0cde2ead55e6cbb31b (patch) | |
tree | c108c1d7afa945516ca3ee91558c3a6dd5137372 | |
parent | 32a2647942409aba027ccdaf5e6ca0f87fd66c1a (diff) | |
download | qutebrowser-e75d7ba5b03699dae20b2e0cde2ead55e6cbb31b.tar.gz qutebrowser-e75d7ba5b03699dae20b2e0cde2ead55e6cbb31b.zip |
Prevent keyhint timer from eating all CPU.
By default, timers are not single-shot, which means they will keep
firing every `interval` seconds after being started. This is unnecessary
for the keyhint timer, and causes it to eat ~100% CPU with
keyhint.delay=0.
Fixes #4742.
-rw-r--r-- | qutebrowser/misc/keyhintwidget.py | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/qutebrowser/misc/keyhintwidget.py b/qutebrowser/misc/keyhintwidget.py index 7c23b230c..4b2c5d685 100644 --- a/qutebrowser/misc/keyhintwidget.py +++ b/qutebrowser/misc/keyhintwidget.py @@ -71,6 +71,7 @@ class KeyHintView(QLabel): self.hide() self._show_timer = usertypes.Timer(self, 'keyhint_show') self._show_timer.timeout.connect(self.show) + self._show_timer.setSingleShot(True) config.set_register_stylesheet(self) def __repr__(self): |