diff --git a/src/Mod/Fem/femsolver/elmer/equations/equation.py b/src/Mod/Fem/femsolver/elmer/equations/equation.py index 3f49fd3195..b78c818fc4 100644 --- a/src/Mod/Fem/femsolver/elmer/equations/equation.py +++ b/src/Mod/Fem/femsolver/elmer/equations/equation.py @@ -89,14 +89,13 @@ class _TaskPanel(object): self._part.ViewObject.show() def reject(self): - self._restoreVisibility() + self._recomputeAndRestore() return True def accept(self): if self._obj.References != self._refWidget.references(): self._obj.References = self._refWidget.references() - self._obj.Document.recompute() - self._restoreVisibility() + self._recomputeAndRestore() return True def _restoreVisibility(self): @@ -110,4 +109,13 @@ class _TaskPanel(object): else: self._part.ViewObject.hide() + def _recomputeAndRestore(self): + doc = Gui.getDocument(self._obj.Document) + doc.Document.recompute() + self._restoreVisibility() + # TODO: test if there is an active selection observer + # if yes Gui.Selection.removeObserver is your friend + doc.resetEdit() + + ## @}