From: Mathieu Baudier Date: Thu, 31 Dec 2020 10:21:44 +0000 (+0100) Subject: Recover from a crashed layer. X-Git-Tag: argeo-suite-2.1.18~45 X-Git-Url: https://git.argeo.org/?p=gpl%2Fargeo-suite.git;a=commitdiff_plain;h=9df2f282c1201c04d5c70cb41f8de976a5b2b9ea;hp=0bb86361b19c2fc2e7276eb4a47cefeae68a0aec Recover from a crashed layer. --- diff --git a/org.argeo.suite.ui/src/org/argeo/suite/ui/SuiteUi.java b/org.argeo.suite.ui/src/org/argeo/suite/ui/SuiteUi.java index d93c3a8..38904a4 100644 --- a/org.argeo.suite.ui/src/org/argeo/suite/ui/SuiteUi.java +++ b/org.argeo.suite.ui/src/org/argeo/suite/ui/SuiteUi.java @@ -110,14 +110,18 @@ class SuiteUi extends Composite { Composite toShow = getLayer(layerId, context); if (toShow != null) { currentLayerId = layerId; - if (!isDisposed()) - getDisplay().syncExec(() -> { - if (!toShow.isDisposed()) - toShow.moveAbove(null); - else - log.warn("Cannot show work area because it is disposed."); - dynamicArea.layout(true, true); - }); + if (!isDisposed()) { +// getDisplay().syncExec(() -> { + if (!toShow.isDisposed()) { + toShow.moveAbove(null); + } else { + log.warn("Cannot show work area because it is disposed."); + toShow = initLayer(layerId, layers.get(layerId), context); + toShow.moveAbove(null); + } + dynamicArea.layout(true, true); +// }); + } return toShow; } else { return current;