Fix #9323: selection lost when editing metadata on device

This commit is contained in:
Charles Haley 2011-03-08 08:23:28 +00:00
parent 89282d6de6
commit 2ff72a513f
2 changed files with 11 additions and 3 deletions

View File

@ -1160,6 +1160,14 @@ class DeviceMixin(object): # {{{
), bad) ), bad)
d.exec_() d.exec_()
def upload_dirtied_booklists(self):
'''
Upload metadata to device.
'''
plugboards = self.library_view.model().db.prefs.get('plugboards', {})
self.device_manager.sync_booklists(Dispatcher(lambda x: x),
self.booklists(), plugboards)
def upload_booklists(self): def upload_booklists(self):
''' '''
Upload metadata to device. Upload metadata to device.

View File

@ -44,13 +44,13 @@ class LibraryViewMixin(object): # {{{
for view in (self.library_view, self.memory_view, self.card_a_view, self.card_b_view): for view in (self.library_view, self.memory_view, self.card_a_view, self.card_b_view):
getattr(view, func)(*args) getattr(view, func)(*args)
self.memory_view.connect_dirtied_signal(self.upload_booklists) self.memory_view.connect_dirtied_signal(self.upload_dirtied_booklists)
self.memory_view.connect_upload_collections_signal( self.memory_view.connect_upload_collections_signal(
func=self.upload_collections, oncard=None) func=self.upload_collections, oncard=None)
self.card_a_view.connect_dirtied_signal(self.upload_booklists) self.card_a_view.connect_dirtied_signal(self.upload_dirtied_booklists)
self.card_a_view.connect_upload_collections_signal( self.card_a_view.connect_upload_collections_signal(
func=self.upload_collections, oncard='carda') func=self.upload_collections, oncard='carda')
self.card_b_view.connect_dirtied_signal(self.upload_booklists) self.card_b_view.connect_dirtied_signal(self.upload_dirtied_booklists)
self.card_b_view.connect_upload_collections_signal( self.card_b_view.connect_upload_collections_signal(
func=self.upload_collections, oncard='cardb') func=self.upload_collections, oncard='cardb')
self.book_on_device(None, reset=True) self.book_on_device(None, reset=True)