From 4b2da2d5271e430751bd84156c47798f60e76c97 Mon Sep 17 00:00:00 2001 From: Namics OSS CI Date: Tue, 2 Apr 2024 08:12:55 +0000 Subject: [PATCH 1/2] Release 1.1.21: set develop to next development version 1.1.22-SNAPSHOT --- pom.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pom.xml b/pom.xml index e30624a..e5d67de 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ com.namics.oss.magnolia magnolia-appbuilder - 1.1.21 + 1.1.22-SNAPSHOT jar ${project.artifactId} From 0f5e0d1ecfbf30c75aca07d9752ae284dba19480 Mon Sep 17 00:00:00 2001 From: eschleb Date: Tue, 2 Apr 2024 10:38:39 +0200 Subject: [PATCH 2/2] Fix LocaleContext issues on dialogs on root context (regression issue) --- .../appbuilder/action/OpenDialogAction.java | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/src/main/java/com/namics/oss/magnolia/appbuilder/action/OpenDialogAction.java b/src/main/java/com/namics/oss/magnolia/appbuilder/action/OpenDialogAction.java index 39b1f31..bb4ca2c 100644 --- a/src/main/java/com/namics/oss/magnolia/appbuilder/action/OpenDialogAction.java +++ b/src/main/java/com/namics/oss/magnolia/appbuilder/action/OpenDialogAction.java @@ -3,9 +3,11 @@ import info.magnolia.i18nsystem.I18nizer; import info.magnolia.ui.UIComponent; import info.magnolia.ui.ValueContext; +import info.magnolia.ui.api.action.ActionExecutionException; import info.magnolia.ui.api.i18n.I18NAuthoringSupport; import info.magnolia.ui.contentapp.action.CloseActionDefinition; import info.magnolia.ui.contentapp.action.CommitActionDefinition; +import info.magnolia.ui.datasource.jcr.JcrDatasource; import info.magnolia.ui.dialog.DialogDefinition; import info.magnolia.ui.dialog.DialogDefinitionRegistry; import info.magnolia.ui.dialog.FormDialogDefinition; @@ -28,12 +30,15 @@ public class OpenDialogAction extends info.magnolia.ui.dialog.actions.OpenDialogAction { private final NodeNameValidatorDefinition nodeNameValidatorDefinition; private final Definition definition; + private final ValueContext valueContext; + private final JcrDatasource jcrDatasource; @Inject public OpenDialogAction( final Definition definition, final LocaleContext localeContext, final ValueContext valueContext, + final JcrDatasource jcrDatasource, final UIComponent parentView, final I18NAuthoringSupport i18NAuthoringSupport, final DialogDefinitionRegistry dialogDefinitionRegistry, @@ -41,10 +46,24 @@ public OpenDialogAction( ) { super(definition, localeContext, valueContext, parentView, i18NAuthoringSupport, dialogDefinitionRegistry, i18nizer); this.definition = definition; + this.valueContext = valueContext; + this.jcrDatasource = jcrDatasource; this.nodeNameValidatorDefinition = new NodeNameValidatorDefinition(); this.nodeNameValidatorDefinition.setMode(definition.getMode()); } + @Override + public void execute() throws ActionExecutionException { + try { + if (valueContext.getSingle().isEmpty()) { + valueContext.set(jcrDatasource.getRoot()); + } + super.execute(); + } catch (Exception e) { + throw new ActionExecutionException(e); + } + } + @Override protected DialogDefinition getDialogDefinition(final DialogDefinitionRegistry dialogDefinitionRegistry, final I18nizer i18nizer) { final DialogDefinition dialogDefinition = dialogDefinitionRegistry.getProvider(getDefinition().getDialogId()).get();