diff --git a/src/calibre/gui2/layout.py b/src/calibre/gui2/layout.py index 20c2588bb4..a1c8063dd8 100644 --- a/src/calibre/gui2/layout.py +++ b/src/calibre/gui2/layout.py @@ -184,6 +184,14 @@ class SearchBar(QWidget): # {{{ l.addWidget(x) parent.virtual_library = x + x = QToolButton(self) + x.setIcon(QIcon(I('minus.png'))) + x.setObjectName('clear_vl') + l.addWidget(x) + x.setVisible(False) + x.setToolTip(_('Close the Virtual Library')) + parent.clear_vl = x + x = QLabel(self) x.setObjectName("search_count") l.addWidget(x) diff --git a/src/calibre/gui2/search_restriction_mixin.py b/src/calibre/gui2/search_restriction_mixin.py index ceed4f1928..528289e320 100644 --- a/src/calibre/gui2/search_restriction_mixin.py +++ b/src/calibre/gui2/search_restriction_mixin.py @@ -316,6 +316,7 @@ class SearchRestrictionMixin(object): self.virtual_library_menu = QMenu() self.virtual_library.clicked.connect(self.virtual_library_clicked) + self.clear_vl.clicked.connect(lambda x: (self.apply_virtual_library(), self.clear_additional_restriction())) self.virtual_library_tooltip = \ _('Use a "virtual library" to show only a subset of the books present in this library') @@ -589,10 +590,12 @@ class SearchRestrictionMixin(object): self.search_count.setStyleSheet( 'QLabel { border-radius: 6px; background-color: %s }' % tweaks['highlight_virtual_library']) + self.clear_vl.setVisible(True) else: # No restriction or not library view t = '' self.search_count.setStyleSheet( 'QLabel { background-color: transparent; }') + self.clear_vl.setVisible(False) self.search_count.setText(t) if __name__ == '__main__':