diff --git a/src/calibre/gui2/viewer/ui.py b/src/calibre/gui2/viewer/ui.py index 6f9151e7db..42d9ab2548 100644 --- a/src/calibre/gui2/viewer/ui.py +++ b/src/calibre/gui2/viewer/ui.py @@ -261,6 +261,7 @@ class EbookViewer(MainWindow): error_dialog(self, _('Loading book failed'), _( 'Failed to open the book at {0}. Click "Show details" for more info.').format(data['pathtoebook']), det_msg=data['tb'], show=True) + self.web_view.show_home_page() return set_book_path(data['base'], data['pathtoebook']) self.current_book_data = data diff --git a/src/calibre/gui2/viewer/web_view.py b/src/calibre/gui2/viewer/web_view.py index 5913f1fe18..e4234bbb88 100644 --- a/src/calibre/gui2/viewer/web_view.py +++ b/src/calibre/gui2/viewer/web_view.py @@ -211,6 +211,7 @@ class ViewerBridge(Bridge): goto_cfi = to_js() full_screen_state_changed = to_js() get_current_cfi = to_js() + show_home_page = to_js() def apply_font_settings(page_or_view): @@ -470,3 +471,6 @@ class WebView(RestartingWebEngineView): def get_current_cfi(self, callback): self.do_callback('get_current_cfi', callback) + + def show_home_page(self): + self.execute_when_ready('show_home_page') diff --git a/src/pyj/viewer-main.pyj b/src/pyj/viewer-main.pyj index 9a2be20f14..e95a9c97bb 100644 --- a/src/pyj/viewer-main.pyj +++ b/src/pyj/viewer-main.pyj @@ -198,6 +198,11 @@ def create_view(prefs, all_font_families, field_metadata): view.overlay.open_book(False) +@from_python +def show_home_page(): + view.overlay.open_book(False) + + @from_python def show_preparing_message(msg): view.show_loading_message(msg)