Fix device views state not being saved when device is ejected/disconnected

This commit is contained in:
Kovid Goyal 2015-11-07 10:39:45 +05:30
parent 620262d6b8
commit 1a826d6625
2 changed files with 5 additions and 8 deletions

View File

@ -1075,15 +1075,17 @@ class DeviceMixin(object): # {{{
else: else:
self.device_connected = None self.device_connected = None
self.status_bar.device_disconnected() self.status_bar.device_disconnected()
dviews = (self.memory_view, self.card_a_view, self.card_b_view)
for v in dviews:
v.save_state()
if self.current_view() != self.library_view: if self.current_view() != self.library_view:
self.book_details.reset_info() self.book_details.reset_info()
self.location_manager.update_devices() self.location_manager.update_devices()
self.bars_manager.update_bars(reveal_bar=True) self.bars_manager.update_bars(reveal_bar=True)
self.library_view.set_device_connected(self.device_connected) self.library_view.set_device_connected(self.device_connected)
# Empty any device view information # Empty any device view information
self.memory_view.set_database([]) for v in dviews:
self.card_a_view.set_database([]) v.set_database([])
self.card_b_view.set_database([])
self.refresh_ondevice() self.refresh_ondevice()
device_signals.device_connection_changed.emit(connected) device_signals.device_connection_changed.emit(connected)

View File

@ -1114,7 +1114,6 @@ class DeviceBooksView(BooksView): # {{{
self._model.resize_rows.connect(self.do_row_sizing, self._model.resize_rows.connect(self.do_row_sizing,
type=Qt.QueuedConnection) type=Qt.QueuedConnection)
self.can_add_columns = False self.can_add_columns = False
self.columns_resized = False
self.resize_on_select = False self.resize_on_select = False
self.rating_delegate = None self.rating_delegate = None
for i in range(10): for i in range(10):
@ -1163,10 +1162,6 @@ class DeviceBooksView(BooksView): # {{{
self._model.set_database(db) self._model.set_database(db)
self.restore_state() self.restore_state()
def resizeColumnsToContents(self):
QTableView.resizeColumnsToContents(self)
self.columns_resized = True
def connect_dirtied_signal(self, slot): def connect_dirtied_signal(self, slot):
self._model.booklist_dirtied.connect(slot) self._model.booklist_dirtied.connect(slot)