From 0457fc1b9c8b3101acb4bdb8ec2415087aadcdbe Mon Sep 17 00:00:00 2001 From: Kovid Goyal Date: Tue, 9 Mar 2021 11:43:41 +0530 Subject: [PATCH] Fix #1918040 [[Enhancement] Show a warning before generating cover from metadata](https://bugs.launchpad.net/calibre/+bug/1918040) --- src/calibre/gui2/book_details.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/calibre/gui2/book_details.py b/src/calibre/gui2/book_details.py index 96770cfccd..1a67c350c6 100644 --- a/src/calibre/gui2/book_details.py +++ b/src/calibre/gui2/book_details.py @@ -653,10 +653,13 @@ class CoverView(QWidget): # {{{ def generate_cover(self, *args): book_id = self.data.get('id') - if book_id is not None: + if book_id is None: + return + from calibre.gui2.ui import get_gui + mi = get_gui().current_db.new_api.get_metadata(book_id) + if not mi.has_cover or confirm( + _('Are you sure you want to replace the cover? The existing cover will be permanently lost.'), 'book_details_generate_cover'): from calibre.ebooks.covers import generate_cover - from calibre.gui2.ui import get_gui - mi = get_gui().current_db.new_api.get_metadata(book_id) cdata = generate_cover(mi) self.update_cover(cdata=cdata)