From 9df2f282c1201c04d5c70cb41f8de976a5b2b9ea Mon Sep 17 00:00:00 2001 From: Mathieu Baudier Date: Thu, 31 Dec 2020 11:21:44 +0100 Subject: [PATCH] Recover from a crashed layer. --- .../src/org/argeo/suite/ui/SuiteUi.java | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) 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; -- 2.30.2