Commit 6728dc0b authored by Roman Alifanov's avatar Roman Alifanov

settings: rollback value on save error

parent 10a03579
...@@ -250,6 +250,7 @@ class BaseSetting: ...@@ -250,6 +250,7 @@ class BaseSetting:
return self._current_value if self._current_value is not None else self.default return self._current_value if self._current_value is not None else self.default
def _set_backend_value(self, value): def _set_backend_value(self, value):
previous_value = self._current_value
self._current_value = value self._current_value = value
self._update_widget() self._update_widget()
self._set_busy(True) self._set_busy(True)
...@@ -261,6 +262,8 @@ class BaseSetting: ...@@ -261,6 +262,8 @@ class BaseSetting:
if self._destroyed: if self._destroyed:
return return
self.logger.error(f"Value save failed for {self.name}: {exc}") self.logger.error(f"Value save failed for {self.name}: {exc}")
self._current_value = previous_value
self._update_widget()
def _on_done(): def _on_done():
if self._destroyed: if self._destroyed:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment