diff options
author | Ivan Alejandro <ivanalejandro0@gmail.com> | 2014-08-06 16:03:49 -0300 |
---|---|---|
committer | Ivan Alejandro <ivanalejandro0@gmail.com> | 2014-08-06 16:23:32 -0300 |
commit | e6a7feeb93a27ef36d15dddcb45c2cc4812a37b0 (patch) | |
tree | 838ef2999e1540047c1b22b1641fa19f447aa6ab /src/leap | |
parent | aaec2c78dc0bf39d7d4b9ae930de9b7f95ae763c (diff) |
Fix logger window blocking the bitmask quit().
- Set the logger window parent,
- don't use an mainwindow instance variable to hold the window object.
This fix have the side offect that prevent multiple log windows being
created at the same time, but it does not causes any side effect or
problem.
Diffstat (limited to 'src/leap')
-rw-r--r-- | src/leap/bitmask/gui/loggerwindow.py | 4 | ||||
-rw-r--r-- | src/leap/bitmask/gui/mainwindow.py | 21 |
2 files changed, 8 insertions, 17 deletions
diff --git a/src/leap/bitmask/gui/loggerwindow.py b/src/leap/bitmask/gui/loggerwindow.py index c4f44dd7..360dd5f0 100644 --- a/src/leap/bitmask/gui/loggerwindow.py +++ b/src/leap/bitmask/gui/loggerwindow.py @@ -40,14 +40,14 @@ class LoggerWindow(QtGui.QDialog): _paste_ok = QtCore.Signal(object) _paste_error = QtCore.Signal(object) - def __init__(self, handler): + def __init__(self, parent, handler): """ Initialize the widget with the custom handler. :param handler: Custom handler that supports history and signal. :type handler: LeapLogHandler. """ - QtGui.QDialog.__init__(self) + QtGui.QDialog.__init__(self, parent) leap_assert(handler, "We need a handler for the logger window") leap_assert_type(handler, LeapLogHandler) diff --git a/src/leap/bitmask/gui/mainwindow.py b/src/leap/bitmask/gui/mainwindow.py index 1bc4c96f..389ff172 100644 --- a/src/leap/bitmask/gui/mainwindow.py +++ b/src/leap/bitmask/gui/mainwindow.py @@ -277,8 +277,6 @@ class MainWindow(QtGui.QMainWindow): self._wizard = None self._wizard_firstrun = False - self._logger_window = None - self._start_hidden = start_hidden self._backend_pid = backend_pid @@ -568,17 +566,13 @@ class MainWindow(QtGui.QMainWindow): Display the window with the history of messages logged until now and displays the new ones on arrival. """ - if self._logger_window is None: - leap_log_handler = self._get_leap_logging_handler() - if leap_log_handler is None: - logger.error('Leap logger handler not found') - return - else: - self._logger_window = LoggerWindow(handler=leap_log_handler) - self._logger_window.setVisible( - not self._logger_window.isVisible()) + leap_log_handler = self._get_leap_logging_handler() + if leap_log_handler is None: + logger.error('Leap logger handler not found') + return else: - self._logger_window.setVisible(not self._logger_window.isVisible()) + lw = LoggerWindow(self, handler=leap_log_handler) + lw.show() @QtCore.Slot() def _show_AKM(self): @@ -1837,9 +1831,6 @@ class MainWindow(QtGui.QMainWindow): if self._wizard: self._wizard.close() - if self._logger_window is not None: - self._logger_window.close() - # Set this in case that the app is hidden QtGui.QApplication.setQuitOnLastWindowClosed(True) |