X-Git-Url: https://git.argeo.org/?a=blobdiff_plain;f=swt%2Forg.argeo.app.ui%2Fsrc%2Forg%2Fargeo%2Fapp%2Fui%2FSuiteApp.java;h=0bfd20b69b845b921e479ed5caf2528f6964d70d;hb=5cb7c83838117e3424d9dd2a5244d203df413f59;hp=12dceb88c786bf853c9ab5eabb48cb53ec0ba0a0;hpb=2362aefd312e04eea437824f37cb6e63389cd361;p=gpl%2Fargeo-suite.git diff --git a/swt/org.argeo.app.ui/src/org/argeo/app/ui/SuiteApp.java b/swt/org.argeo.app.ui/src/org/argeo/app/ui/SuiteApp.java index 12dceb8..0bfd20b 100644 --- a/swt/org.argeo.app.ui/src/org/argeo/app/ui/SuiteApp.java +++ b/swt/org.argeo.app.ui/src/org/argeo/app/ui/SuiteApp.java @@ -459,7 +459,7 @@ public class SuiteApp extends AbstractCmsApp implements CmsEventSubscriber { appTitle = ui.getTitle().lead() + " - "; if (SuiteUiUtils.isTopic(topic, SuiteUxEvent.refreshPart)) { - Content node = getNode(ui, event); + Content node = getContentFromEvent(ui, event); if (node == null) return; SwtUiProvider uiProvider = findByType(uiProvidersByType, node); @@ -468,7 +468,7 @@ public class SuiteApp extends AbstractCmsApp implements CmsEventSubscriber { layer.view(uiProvider, ui.getCurrentWorkArea(), node); ui.getCmsView().stateChanged(nodeToState(node), appTitle + CmsUxUtils.getTitle(node)); } else if (SuiteUiUtils.isTopic(topic, SuiteUxEvent.openNewPart)) { - Content node = getNode(ui, event); + Content node = getContentFromEvent(ui, event); if (node == null) return; SwtUiProvider uiProvider = findByType(uiProvidersByType, node); @@ -488,7 +488,7 @@ public class SuiteApp extends AbstractCmsApp implements CmsEventSubscriber { String title = null; if (layerTitle != null) title = layerTitle.lead(); - Content nodeFromState = getNode(ui, event); + Content nodeFromState = getContentFromEvent(ui, event); if (nodeFromState != null && nodeFromState.getPath().equals(ui.getUserDir().getPath())) { // default layer view is forced String state = defaultLayerPid.equals(layerId) ? "~" : layerId; @@ -506,7 +506,7 @@ public class SuiteApp extends AbstractCmsApp implements CmsEventSubscriber { } } } else { - Content node = getNode(ui, event); + Content node = getContentFromEvent(ui, event); if (node != null) { SuiteLayer layer = findByType(layersByType, node); ui.switchToLayer(layer, node); @@ -520,13 +520,13 @@ public class SuiteApp extends AbstractCmsApp implements CmsEventSubscriber { }); } - private Content getNode(SuiteUi ui, Map event) { + protected Content getContentFromEvent(SuiteUi ui, Map event) { ProvidedSession contentSession = (ProvidedSession) CmsUxUtils.getContentSession(contentRepository, ui.getCmsView()); String path = get(event, SuiteUxEvent.CONTENT_PATH); - if (path != null && path.equals(HOME_STATE)) + if (path != null && (path.equals(HOME_STATE) || path.equals(""))) return ui.getUserDir(); Content node; if (path == null) {