Helpviewer/HelpWindow.py

branch
5_2_x
changeset 2151
7d38a32bf535
parent 2072
f2c3bb7b0fb5
child 2303
0ed4ed026c16
diff -r e734eb71cac8 -r 7d38a32bf535 Helpviewer/HelpWindow.py
--- a/Helpviewer/HelpWindow.py	Mon Oct 15 20:04:14 2012 +0200
+++ b/Helpviewer/HelpWindow.py	Tue Oct 16 19:43:27 2012 +0200
@@ -224,6 +224,7 @@
             self.__virusTotal.fileScanReport.connect(self.__virusTotalFileScanReport)
             
             self.__previewer = None
+            self.__shutdownCalled = False
             
             QTimer.singleShot(0, self.__lookForNewDocumentation)
             if self.__searchWord is not None:
@@ -1786,13 +1787,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()
         
@@ -1836,8 +1852,8 @@
         if not self.fromEric:
             Preferences.syncPreferences()
         
-        e.accept()
-        self.helpClosed.emit()
+        self.__shutdownCalled = True
+        return True
 
     def __backward(self):
         """

eric ide

mercurial