diff --git a/src/calibre/gui2/viewer/main.py b/src/calibre/gui2/viewer/main.py index bf77934571..8aeb853242 100644 --- a/src/calibre/gui2/viewer/main.py +++ b/src/calibre/gui2/viewer/main.py @@ -155,6 +155,7 @@ def run_gui(app, opts, args, internal_book_data, listener=None): open_at=opts.open_at, continue_reading=opts.continue_reading, force_reload=opts.force_reload, calibre_book_data=internal_book_data) main.set_exception_handler() + app.shutdown_signal_received.connect(main.request_close) if len(args) > 1: acc.events.append(os.path.abspath(args[-1])) acc.got_file.connect(main.handle_commandline_arg) diff --git a/src/calibre/gui2/viewer/ui.py b/src/calibre/gui2/viewer/ui.py index 0f011e59f9..8c8e5e677f 100644 --- a/src/calibre/gui2/viewer/ui.py +++ b/src/calibre/gui2/viewer/ui.py @@ -811,6 +811,9 @@ class EbookViewer(MainWindow): self.cfi_changed(cfi) self.force_close() + def request_close(self): + self.close() + def closeEvent(self, ev): if self.shutdown_done: return