mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Virtual Libraries: If the user selects a virtual library whose tab has been closed via the Virtual Library button, re-open the tab instead of displaying the virtual library in the All Books tab. Fixes #1322474 [Closing a Virtual Library Tab Flags It As Hidden](https://bugs.launchpad.net/calibre/+bug/1322474)
This commit is contained in:
parent
107303bf06
commit
20dc791686
@ -99,7 +99,6 @@ class LibraryViewMixin(object): # {{{
|
|||||||
if v is self.library_view and v.row_count() == 0:
|
if v is self.library_view and v.row_count() == 0:
|
||||||
self.book_details.reset_info()
|
self.book_details.reset_info()
|
||||||
|
|
||||||
|
|
||||||
# }}}
|
# }}}
|
||||||
|
|
||||||
class LibraryWidget(Splitter): # {{{
|
class LibraryWidget(Splitter): # {{{
|
||||||
@ -317,13 +316,17 @@ class VLTabs(QTabBar): # {{{
|
|||||||
db = self.current_db
|
db = self.current_db
|
||||||
vl_map = db.prefs.get('virtual_libraries', {})
|
vl_map = db.prefs.get('virtual_libraries', {})
|
||||||
virt_libs = frozenset(vl_map)
|
virt_libs = frozenset(vl_map)
|
||||||
hidden = frozenset(db.prefs['virt_libs_hidden'])
|
hidden = set(db.prefs['virt_libs_hidden'])
|
||||||
if hidden - virt_libs:
|
if hidden - virt_libs:
|
||||||
db.prefs['virt_libs_hidden'] = list(hidden.intersection(virt_libs))
|
hidden = hidden.intersection(virt_libs)
|
||||||
|
db.prefs['virt_libs_hidden'] = list(hidden)
|
||||||
order = db.prefs['virt_libs_order']
|
order = db.prefs['virt_libs_order']
|
||||||
while self.count():
|
while self.count():
|
||||||
self.removeTab(0)
|
self.removeTab(0)
|
||||||
current_lib = db.data.get_base_restriction_name()
|
current_lib = db.data.get_base_restriction_name()
|
||||||
|
if current_lib in hidden:
|
||||||
|
hidden.discard(current_lib)
|
||||||
|
db.prefs['virt_libs_hidden'] = list(hidden)
|
||||||
current_idx = all_idx = None
|
current_idx = all_idx = None
|
||||||
virt_libs = (set(virt_libs) - hidden) | {''}
|
virt_libs = (set(virt_libs) - hidden) | {''}
|
||||||
order = {x:i for i, x in enumerate(order)}
|
order = {x:i for i, x in enumerate(order)}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user