示例#1
0
 def closeEvent(self, ev):
     if self.shutdown_done:
         return
     if self.current_book_data and self.web_view.view_is_ready and not self.close_forced:
         ev.ignore()
         if not self.shutting_down:
             self.shutting_down = True
             QTimer.singleShot(2000, self.force_close)
             self.web_view.prepare_for_close()
         return
     self.shutting_down = True
     self.search_widget.shutdown()
     self.web_view.shutdown()
     try:
         self.save_state()
         self.save_annotations()
         if self.annotations_saver is not None:
             self.annotations_saver.shutdown()
             self.annotations_saver = None
     except Exception:
         import traceback
         traceback.print_exc()
     clean_running_workers()
     self.shutdown_done = True
     return MainWindow.closeEvent(self, ev)
示例#2
0
 def closeEvent(self, ev):
     try:
         self.save_annotations()
         self.save_state()
     except Exception:
         import traceback
         traceback.print_exc()
     clean_running_workers()
     return MainWindow.closeEvent(self, ev)
示例#3
0
 def closeEvent(self, ev):
     self.shutting_down = True
     self.search_widget.shutdown()
     try:
         self.save_annotations()
         self.save_state()
     except Exception:
         import traceback
         traceback.print_exc()
     clean_running_workers()
     return MainWindow.closeEvent(self, ev)