Refactor setManualSyncEnabled

CURA-7290
This commit is contained in:
Nino van Hooff 2020-05-14 15:15:16 +02:00
parent a3f968188f
commit a9692e3d27

View File

@ -116,8 +116,7 @@ class Account(QObject):
self._sync_state = SyncState.SYNCING self._sync_state = SyncState.SYNCING
elif any(val == SyncState.ERROR for val in self._sync_services.values()): elif any(val == SyncState.ERROR for val in self._sync_services.values()):
self._sync_state = SyncState.ERROR self._sync_state = SyncState.ERROR
self._manual_sync_enabled = True self._setManualSyncEnabled(True)
self.manualSyncEnabledChanged.emit(self._manual_sync_enabled)
else: else:
self._sync_state = SyncState.SUCCESS self._sync_state = SyncState.SUCCESS
@ -161,8 +160,7 @@ class Account(QObject):
self._logged_in = logged_in self._logged_in = logged_in
self.loginStateChanged.emit(logged_in) self.loginStateChanged.emit(logged_in)
if logged_in: if logged_in:
self._manual_sync_enabled = False self._setManualSyncEnabled(False)
self.manualSyncEnabledChanged.emit(self._manual_sync_enabled)
self._sync() self._sync()
else: else:
if self._update_timer.isActive(): if self._update_timer.isActive():
@ -182,6 +180,11 @@ class Account(QObject):
self.syncRequested.emit() self.syncRequested.emit()
def _setManualSyncEnabled(self, enabled: bool) -> None:
if self._manual_sync_enabled != enabled:
self._manual_sync_enabled = enabled
self.manualSyncEnabledChanged.emit(enabled)
@pyqtSlot() @pyqtSlot()
def login(self) -> None: def login(self) -> None:
if self._logged_in: if self._logged_in:
@ -228,15 +231,13 @@ class Account(QObject):
@pyqtSlot(bool) @pyqtSlot(bool)
def sync(self, user_initiated=False): def sync(self, user_initiated=False):
if user_initiated: if user_initiated:
self._manual_sync_enabled = False self._setManualSyncEnabled(False)
self.manualSyncEnabledChanged.emit(self._manual_sync_enabled)
self._sync() self._sync()
@pyqtSlot() @pyqtSlot()
def popupClosed(self): def popupClosed(self):
self._manual_sync_enabled = True self._setManualSyncEnabled(True)
self.manualSyncEnabledChanged.emit(self._manual_sync_enabled)
@pyqtSlot() @pyqtSlot()
def logout(self) -> None: def logout(self) -> None: