diff --git a/src/main/java/org/gcube/portlets/gcubeckan/gcubeckandatacatalog/client/CkanEventHandlerManager.java b/src/main/java/org/gcube/portlets/gcubeckan/gcubeckandatacatalog/client/CkanEventHandlerManager.java index ccfd2e9..1a49579 100644 --- a/src/main/java/org/gcube/portlets/gcubeckan/gcubeckandatacatalog/client/CkanEventHandlerManager.java +++ b/src/main/java/org/gcube/portlets/gcubeckan/gcubeckandatacatalog/client/CkanEventHandlerManager.java @@ -21,9 +21,12 @@ import org.gcube.portlets.gcubeckan.gcubeckandatacatalog.client.event.ShowUserOr import org.gcube.portlets.gcubeckan.gcubeckandatacatalog.client.event.ShowUserOrganizationsEventHandler; import org.gcube.portlets.gcubeckan.gcubeckandatacatalog.client.view.GCubeCkanDataCatalogPanel; import org.gcube.portlets.gcubeckan.gcubeckandatacatalog.shared.CkanConnectorAccessPoint; +import org.gcube.portlets.widgets.ckandatapublisherwidget.client.events.CloseCreationFormEvent; import org.gcube.portlets.widgets.ckandatapublisherwidget.client.ui.CreateDatasetForm; import com.github.gwtbootstrap.client.ui.Modal; +import com.github.gwtbootstrap.client.ui.event.HideEvent; +import com.github.gwtbootstrap.client.ui.event.HideHandler; import com.google.gwt.event.shared.HandlerManager; import com.google.gwt.user.client.Window; import com.google.gwt.user.client.rpc.AsyncCallback; @@ -82,9 +85,18 @@ public class CkanEventHandlerManager { if (username != null) { modal.setTitle("Publish Product"); modal.addStyleName("insert-metadata-modal-style"); - modal.add(new CreateDatasetForm(username)); + modal.add(new CreateDatasetForm(username, eventBus)); modal.setCloseVisible(true); modal.show(); + + // hide any popup panel opened + modal.addHideHandler(new HideHandler() { + + @Override + public void onHide(HideEvent hideEvent) { + eventBus.fireEvent(new CloseCreationFormEvent()); + } + }); } else Window.alert("Please, logout and login again then retry.");