diff --git a/manual/url_scheme.rst b/manual/url_scheme.rst index 108e6d773b..ea5478500a 100644 --- a/manual/url_scheme.rst +++ b/manual/url_scheme.rst @@ -56,6 +56,8 @@ brackets at the end of the path to the book folder. You can copy a link to the current book displayed in calibre by right clicking the :guilabel:`Book details` panel and choosing :guilabel:`Copy link to book`. +If a search is active and the book is not matched by the search then the search is cleared. + If a Virtual library is selected, calibre will use it when showing the book. If the book isn't found in that virtual library then the virtual library is cleared. @@ -65,8 +67,8 @@ If you want to switch to a particular Virtual library when showing the book, use or calibre://show-book/Library_Name/book_id?encoded_virtual_library=hex_encoded_virtual_library_name -replacing spaces in the Virtual library name by ``%20``. If the book isn't in that -virtual library then it is ignored. +replacing spaces in the Virtual library name by ``%20``. If the book isn't found in that +virtual library then the virtual library is ignored. Open a specific book in the E-book viewer at a specific position diff --git a/src/calibre/gui2/ui.py b/src/calibre/gui2/ui.py index ef19689963..71f4385dc9 100644 --- a/src/calibre/gui2/ui.py +++ b/src/calibre/gui2/ui.py @@ -711,6 +711,9 @@ class Main(MainWindow, MainWindowMixin, DeviceMixin, EmailMixin, # {{{ if vl is not None and vl != '_': self.apply_virtual_library(vl) rows = self.library_view.select_rows((book_id,)) + if not rows: + self.search.set_search_string('') + rows = self.library_view.select_rows((book_id,)) db = self.current_db if not rows and (db.data.get_base_restriction_name() or db.data.get_search_restriction_name()): self.apply_virtual_library()