From b82ffa2cac7947ead18f8aa0f787d627d044295a Mon Sep 17 00:00:00 2001 From: Micah Lee Date: Fri, 6 Aug 2021 13:10:56 -0700 Subject: [PATCH] Make it so windows remember if waiting has finished --- dangerzone/gui/common.py | 3 +++ dangerzone/gui/main_window.py | 9 +++++++-- dangerzone/gui/vm.py | 2 ++ 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/dangerzone/gui/common.py b/dangerzone/gui/common.py index f29d8e3..362a2fe 100644 --- a/dangerzone/gui/common.py +++ b/dangerzone/gui/common.py @@ -38,6 +38,9 @@ class GuiCommon(object): # Preload list of PDF viewers on computer self.pdf_viewers = self._find_pdf_viewers() + # Are we done waiting (for VM to start, or container to install) + self.is_waiting_finished = False + def get_window_icon(self): if platform.system() == "Windows": path = self.global_common.get_resource_path("dangerzone.ico") diff --git a/dangerzone/gui/main_window.py b/dangerzone/gui/main_window.py index 9b5f2e0..27a2151 100644 --- a/dangerzone/gui/main_window.py +++ b/dangerzone/gui/main_window.py @@ -54,8 +54,12 @@ class MainWindow(QtWidgets.QMainWindow): self.content_widget.close_window.connect(self.close) # Only use the waiting widget if we have a VM - self.waiting_widget.show() - self.content_widget.hide() + if self.gui_common.is_waiting_finished: + self.waiting_widget.hide() + self.content_widget.show() + else: + self.waiting_widget.show() + self.content_widget.hide() # Layout layout = QtWidgets.QVBoxLayout() @@ -70,6 +74,7 @@ class MainWindow(QtWidgets.QMainWindow): self.show() def waiting_finished(self): + self.gui_common.is_waiting_finished = True self.waiting_widget.hide() self.content_widget.show() diff --git a/dangerzone/gui/vm.py b/dangerzone/gui/vm.py index e69a7ab..6680678 100644 --- a/dangerzone/gui/vm.py +++ b/dangerzone/gui/vm.py @@ -76,6 +76,8 @@ class Vm(QtCore.QObject): self.stop() def start(self): + print("Starting VM\n") + self.state = self.STATE_STARTING self.vm_state_change.emit(self.state)