Fix AttributeError on config changes on Ubuntu.

Fixes #390.
This commit is contained in:
Florian Bruhin 2014-12-26 12:25:42 +01:00
parent df3d41eb66
commit 5d0dd5b11b

View File

@ -20,6 +20,7 @@
"""The main browser widgets."""
import itertools
import functools
from PyQt5.QtCore import pyqtSignal, pyqtSlot, Qt, QTimer, QUrl
from PyQt5.QtWidgets import QApplication
@ -96,7 +97,13 @@ class WebView(QWebView):
self._zoom = None
self._has_ssl_errors = False
self.init_neighborlist()
objreg.get('config').changed.connect(self.init_neighborlist)
config = objreg.get('config')
config.changed.connect(self.init_neighborlist)
# For some reason, this signal doesn't get disconnected automatically
# when the WebView is destroyed on older PyQt versions.
# See https://github.com/The-Compiler/qutebrowser/issues/390
self.destroyed.connect(functools.partial(
config.changed.disconnect, self.init_neighborlist))
self._cur_url = None
self.cur_url = QUrl()
self.progress = 0