Helpviewer/HelpWindow.py

changeset 2149
bd0bbb3043df
parent 2101
5bac7dee9e1a
child 2192
61b3849df76d
diff -r 28647dd918f3 -r bd0bbb3043df Helpviewer/HelpWindow.py
--- a/Helpviewer/HelpWindow.py	Mon Oct 15 19:30:41 2012 +0200
+++ b/Helpviewer/HelpWindow.py	Tue Oct 16 19:43:27 2012 +0200
@@ -257,6 +257,7 @@
             self.__virusTotal.fileScanReport.connect(self.__virusTotalFileScanReport)
             
             self.__previewer = None
+            self.__shutdownCalled = False
             
             QTimer.singleShot(0, self.__lookForNewDocumentation)
             if self.__searchWord is not None:
@@ -1941,13 +1942,28 @@
                 <br />This event is simply accepted after the history has been
                 saved and all window references have been deleted.
         """
+        if not self.__shutdownCalled:
+            res = self.shutdown()
+            
+            if res:
+                e.accept()
+                self.helpClosed.emit()
+            else:
+                e.ignore()
+        else:
+            e.accept()
+    
+    def shutdown(self):
+        """
+        Public method to shut down the web browser.
+        
+        @return flag indicating successful shutdown (boolean)
+        """
         if not self.tabWidget.shallShutDown():
-            e.ignore()
-            return
+            return False
         
         if not self.downloadManager().allowQuit():
-            e.ignore()
-            return
+            return False
         
         self.downloadManager().shutdown()
         
@@ -1997,8 +2013,8 @@
         if not self.fromEric:
             Preferences.syncPreferences()
         
-        e.accept()
-        self.helpClosed.emit()
+        self.__shutdownCalled = True
+        return True
 
     def __backward(self):
         """

eric ide

mercurial