This is an automated email from the ASF dual-hosted git repository. ilgrosso pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/syncope.git
The following commit(s) were added to refs/heads/master by this push: new ac43106 [SYNCOPE-1624] Toggle panel improvements ac43106 is described below commit ac431061c63d4f21fa58da8f151e54f7f490bf79 Author: Francesco Chicchiriccò <ilgro...@apache.org> AuthorDate: Tue Mar 23 09:26:01 2021 +0100 [SYNCOPE-1624] Toggle panel improvements --- .../notifications/MailTemplateDirectoryPanel.java | 16 +++-------- .../client/console/panels/AnyDirectoryPanel.java | 15 ---------- .../syncope/client/console/panels/AnyPanel.java | 5 ++++ .../console/panels/ApplicationDirectoryPanel.java | 2 +- .../client/console/panels/DirectoryPanel.java | 32 ++++++++++------------ .../console/panels/DynRealmDirectoryPanel.java | 15 +++------- .../panels/ImplementationDirectoryPanel.java | 15 +++------- .../console/panels/SecurityQuestionsPanel.java | 27 ++++-------------- .../console/policies/PolicyDirectoryPanel.java | 18 ++++-------- .../reports/ReportTemplateDirectoryPanel.java | 16 +++-------- 10 files changed, 48 insertions(+), 113 deletions(-) diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/notifications/MailTemplateDirectoryPanel.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/notifications/MailTemplateDirectoryPanel.java index fa4642f..47c7f8d 100644 --- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/notifications/MailTemplateDirectoryPanel.java +++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/notifications/MailTemplateDirectoryPanel.java @@ -34,7 +34,6 @@ import org.apache.syncope.client.console.pages.BasePage; import org.apache.syncope.client.console.panels.DirectoryPanel; import org.apache.syncope.client.console.rest.NotificationRestClient; import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal; -import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal.WindowClosedCallback; import org.apache.syncope.client.console.wicket.markup.html.form.ActionLink; import org.apache.syncope.client.ui.commons.wizards.AbstractModalPanelBuilder; import org.apache.syncope.client.ui.commons.wizards.AjaxWizard; @@ -70,18 +69,11 @@ public class MailTemplateDirectoryPanel modal.size(Modal.Size.Small); modal.addSubmitButton(); - setFooterVisibility(true); - - modal.setWindowClosedCallback(new WindowClosedCallback() { - - private static final long serialVersionUID = 8804221891699487139L; - - @Override - public void onClose(final AjaxRequestTarget target) { - updateResultTable(target); - modal.show(false); - } + modal.setWindowClosedCallback(target -> { + updateResultTable(target); + modal.show(false); }); + setFooterVisibility(true); addOuterObject(utilityModal); setWindowClosedReloadCallback(utilityModal); diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/AnyDirectoryPanel.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/AnyDirectoryPanel.java index 36c1387..4c0d712 100644 --- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/AnyDirectoryPanel.java +++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/AnyDirectoryPanel.java @@ -38,9 +38,7 @@ import org.apache.syncope.client.console.wicket.extensions.markup.html.repeater. import org.apache.syncope.client.console.wicket.extensions.markup.html.repeater.data.table.KeyPropertyColumn; import org.apache.syncope.client.console.wicket.extensions.markup.html.repeater.data.table.TokenColumn; import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal; -import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal.WindowClosedCallback; import org.apache.syncope.client.console.wicket.markup.html.form.ActionLink; -import org.apache.syncope.client.console.wizards.any.ResultPage; import org.apache.syncope.client.console.wizards.any.StatusPanel; import org.apache.syncope.client.ui.commons.Constants; import org.apache.syncope.client.ui.commons.status.ConnObjectWrapper; @@ -114,19 +112,6 @@ public abstract class AnyDirectoryPanel<A extends AnyTO, E extends AbstractAnyRe setWindowClosedReloadCallback(utilityModal); modal.size(Modal.Size.Large); - // change close callback in order to update header after model update - modal.setWindowClosedCallback(new WindowClosedCallback() { - - private static final long serialVersionUID = 8804221891699487139L; - - @Override - public void onClose(final AjaxRequestTarget target) { - if (actionTogglePanel.isVisibleInHierarchy() && modal.getContent() instanceof ResultPage) { - actionTogglePanel.updateHeader(target, ResultPage.class.cast(modal.getContent()).getItem()); - } - modal.show(false); - } - }); altDefaultModal.size(Modal.Size.Large); diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/AnyPanel.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/AnyPanel.java index c0a4992..7c6bda1 100644 --- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/AnyPanel.java +++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/AnyPanel.java @@ -31,6 +31,7 @@ import org.apache.syncope.client.console.panels.search.SearchClausePanel; import org.apache.syncope.client.console.panels.search.SearchUtils; import org.apache.syncope.client.console.panels.search.UserSearchPanel; import org.apache.syncope.client.console.rest.AnyTypeClassRestClient; +import org.apache.syncope.client.console.wicket.markup.html.form.ActionLinksTogglePanel; import org.apache.syncope.client.lib.SyncopeClient; import org.apache.syncope.client.ui.commons.Constants; import org.apache.syncope.client.ui.commons.panels.LabelPanel; @@ -49,6 +50,7 @@ import org.apache.wicket.PageReference; import org.apache.wicket.ajax.AjaxRequestTarget; import org.apache.wicket.ajax.markup.html.AjaxLink; import org.apache.wicket.authroles.authorization.strategies.role.metadata.MetaDataRoleAuthorizationStrategy; +import org.apache.wicket.event.Broadcast; import org.apache.wicket.event.IEvent; import org.apache.wicket.extensions.markup.html.tabs.AbstractTab; import org.apache.wicket.extensions.markup.html.tabs.ITab; @@ -254,6 +256,9 @@ public class AnyPanel extends Panel implements ModalPanel { if (event.getPayload() instanceof SearchClausePanel.SearchEvent) { AjaxRequestTarget target = SearchClausePanel.SearchEvent.class.cast(event.getPayload()).getTarget(); + send(AnyPanel.this.directoryPanel, Broadcast.BREADTH, + new ActionLinksTogglePanel.ActionLinkToggleCloseEventPayload(target)); + String precond = realmTO.getFullPath().startsWith(SyncopeConstants.ROOT_REALM) ? StringUtils.EMPTY : String.format("$dynRealms=~%s;", realmTO.getKey()); diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/ApplicationDirectoryPanel.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/ApplicationDirectoryPanel.java index fa0e574..dc029f0 100644 --- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/ApplicationDirectoryPanel.java +++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/ApplicationDirectoryPanel.java @@ -85,11 +85,11 @@ public class ApplicationDirectoryPanel extends modal.size(Modal.Size.Default); modal.addSubmitButton(); - setFooterVisibility(true); modal.setWindowClosedCallback(target -> { updateResultTable(target); modal.show(false); }); + setFooterVisibility(true); privilegeModal.size(Modal.Size.Large); privilegeModal.setWindowClosedCallback(target -> { diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/DirectoryPanel.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/DirectoryPanel.java index fa36ba9..4bf3724 100644 --- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/DirectoryPanel.java +++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/DirectoryPanel.java @@ -31,11 +31,11 @@ import org.apache.syncope.client.console.pages.BasePage; import org.apache.syncope.client.ui.commons.rest.RestClient; import org.apache.syncope.client.ui.commons.ajax.form.IndicatorAjaxFormComponentUpdatingBehavior; import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal; -import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal.WindowClosedCallback; import org.apache.syncope.client.console.wicket.markup.html.form.ActionLink; import org.apache.syncope.client.console.wicket.markup.html.form.ActionLinksTogglePanel; import org.apache.syncope.client.console.wicket.markup.html.form.ActionsPanel; import org.apache.syncope.client.console.wizards.WizardMgtPanel; +import org.apache.syncope.client.ui.commons.panels.WizardModalPanel; import org.apache.syncope.common.lib.types.IdRepoEntitlement; import org.apache.wicket.PageReference; import org.apache.wicket.ajax.AjaxRequestTarget; @@ -167,27 +167,25 @@ public abstract class DirectoryPanel< rows = PreferenceManager.getPaginatorRows(getRequest(), paginatorRowsKey()); - setWindowClosedReloadCallback(modal); - setWindowClosedReloadCallback(altDefaultModal); - setWindowClosedReloadCallback(displayAttributeModal); - - displayAttributeModal.setWindowClosedCallback(new WindowClosedCallback() { + modal.setWindowClosedCallback(target -> { + if (actionTogglePanel.isVisibleInHierarchy() && modal.getContent() instanceof WizardModalPanel) { + actionTogglePanel.updateHeader(target, WizardModalPanel.class.cast(modal.getContent()).getItem()); + } + modal.show(false); + }); - private static final long serialVersionUID = 8804221891699487139L; + setWindowClosedReloadCallback(altDefaultModal); + altDefaultModal.size(Modal.Size.Default); - @Override - public void onClose(final AjaxRequestTarget target) { - final EventDataWrapper data = new EventDataWrapper(); - data.setTarget(target); - data.setRows(rows); + displayAttributeModal.setWindowClosedCallback(target -> { + EventDataWrapper data = new EventDataWrapper(); + data.setTarget(target); + data.setRows(rows); - send(DirectoryPanel.this, Broadcast.EXACT, data); + send(DirectoryPanel.this, Broadcast.EXACT, data); - modal.show(false); - } + modal.show(false); }); - - altDefaultModal.size(Modal.Size.Default); displayAttributeModal.size(Modal.Size.Default); displayAttributeModal.addSubmitButton(); } diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/DynRealmDirectoryPanel.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/DynRealmDirectoryPanel.java index 087e5de..a828115 100644 --- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/DynRealmDirectoryPanel.java +++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/DynRealmDirectoryPanel.java @@ -31,7 +31,6 @@ import org.apache.syncope.client.console.commons.SortableDataProviderComparator; import org.apache.syncope.client.console.pages.BasePage; import org.apache.syncope.client.console.panels.DynRealmDirectoryPanel.DynRealmDataProvider; import org.apache.syncope.client.console.rest.DynRealmRestClient; -import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal.WindowClosedCallback; import org.apache.syncope.client.console.wicket.markup.html.form.ActionLink; import org.apache.syncope.client.console.wicket.markup.html.form.ActionsPanel; import org.apache.syncope.client.console.wizards.DynRealmWrapper; @@ -66,17 +65,11 @@ public class DynRealmDirectoryPanel extends modal.size(Modal.Size.Large); modal.addSubmitButton(); - setFooterVisibility(true); - modal.setWindowClosedCallback(new WindowClosedCallback() { - - private static final long serialVersionUID = 8804221891699487139L; - - @Override - public void onClose(final AjaxRequestTarget target) { - updateResultTable(target); - modal.show(false); - } + modal.setWindowClosedCallback(target -> { + updateResultTable(target); + modal.show(false); }); + setFooterVisibility(true); AjaxLink<Void> newDynRealmlLink = new AjaxLink<Void>("add") { diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/ImplementationDirectoryPanel.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/ImplementationDirectoryPanel.java index 884a46f..68d85df 100644 --- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/ImplementationDirectoryPanel.java +++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/ImplementationDirectoryPanel.java @@ -31,7 +31,6 @@ import org.apache.syncope.client.console.commons.SortableDataProviderComparator; import org.apache.syncope.client.console.pages.BasePage; import org.apache.syncope.client.console.panels.ImplementationDirectoryPanel.ImplementationProvider; import org.apache.syncope.client.console.rest.ImplementationRestClient; -import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal.WindowClosedCallback; import org.apache.syncope.client.console.wicket.markup.html.form.ActionLink; import org.apache.syncope.client.console.wicket.markup.html.form.ActionLinksTogglePanel; import org.apache.syncope.client.console.wicket.markup.html.form.ActionsPanel; @@ -70,16 +69,10 @@ public class ImplementationDirectoryPanel extends DirectoryPanel< modal.size(Modal.Size.Large); modal.addSubmitButton(); - modal.setWindowClosedCallback(new WindowClosedCallback() { - - private static final long serialVersionUID = 8804221891699487139L; - - @Override - public void onClose(final AjaxRequestTarget target) { - implementation.setEngine(null); - updateResultTable(target); - modal.show(false); - } + modal.setWindowClosedCallback(target -> { + implementation.setEngine(null); + updateResultTable(target); + modal.show(false); }); setFooterVisibility(true); diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/SecurityQuestionsPanel.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/SecurityQuestionsPanel.java index 5543271..64d93ce 100644 --- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/SecurityQuestionsPanel.java +++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/panels/SecurityQuestionsPanel.java @@ -32,7 +32,6 @@ import org.apache.syncope.client.console.pages.BasePage; import org.apache.syncope.client.console.panels.SecurityQuestionsPanel.SecurityQuestionsProvider; import org.apache.syncope.client.console.rest.SecurityQuestionRestClient; import org.apache.syncope.client.console.wicket.extensions.markup.html.repeater.data.table.KeyPropertyColumn; -import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal.WindowClosedCallback; import org.apache.syncope.client.console.wicket.markup.html.form.ActionLink; import org.apache.syncope.client.console.wicket.markup.html.form.ActionsPanel; import org.apache.syncope.client.ui.commons.wizards.AbstractModalPanelBuilder; @@ -68,16 +67,13 @@ public class SecurityQuestionsPanel extends DirectoryPanel< } }.disableCheckBoxes()); - modal.setWindowClosedCallback(new WindowClosedCallback() { - - private static final long serialVersionUID = 8804221891699487139L; - - @Override - public void onClose(final AjaxRequestTarget target) { - modal.show(false); - target.add(container); - } + modal.addSubmitButton(); + modal.size(Modal.Size.Large); + modal.setWindowClosedCallback(target -> { + modal.show(false); + target.add(container); }); + setFooterVisibility(true); this.addNewItemPanelBuilder( new AbstractModalPanelBuilder<SecurityQuestionTO>(new SecurityQuestionTO(), pageRef) { @@ -92,22 +88,11 @@ public class SecurityQuestionsPanel extends DirectoryPanel< } }, true); - setFooterVisibility(true); - modal.addSubmitButton(); - modal.size(Modal.Size.Large); initResultTable(); MetaDataRoleAuthorizationStrategy.authorize(addAjaxLink, RENDER, IdRepoEntitlement.SECURITY_QUESTION_CREATE); } - private SecurityQuestionsPanel( - final String id, - final Builder<SecurityQuestionTO, SecurityQuestionTO, SecurityQuestionRestClient> builder) { - - super(id, builder); - setOutputMarkupId(true); - } - @Override protected SecurityQuestionsProvider dataProvider() { return new SecurityQuestionsProvider(rows); diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/policies/PolicyDirectoryPanel.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/policies/PolicyDirectoryPanel.java index 8d2069a..eac8db2 100644 --- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/policies/PolicyDirectoryPanel.java +++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/policies/PolicyDirectoryPanel.java @@ -35,7 +35,6 @@ import org.apache.syncope.client.console.rest.PolicyRestClient; import org.apache.syncope.client.console.wicket.extensions.markup.html.repeater.data.table.CollectionPropertyColumn; import org.apache.syncope.client.console.wicket.extensions.markup.html.repeater.data.table.KeyPropertyColumn; import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal; -import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal.WindowClosedCallback; import org.apache.syncope.client.console.wicket.markup.html.form.ActionLink; import org.apache.syncope.client.console.wicket.markup.html.form.ActionLink.ActionType; import org.apache.syncope.client.console.wicket.markup.html.form.ActionsPanel; @@ -94,20 +93,13 @@ public abstract class PolicyDirectoryPanel<T extends PolicyTO> setWindowClosedReloadCallback(policySpecModal); addOuterObject(policySpecModal); - modal.setWindowClosedCallback(new WindowClosedCallback() { - - private static final long serialVersionUID = 8804221891699487129L; - - @Override - public void onClose(final AjaxRequestTarget target) { - updateResultTable(target); - modal.show(false); - } - }); - - setFooterVisibility(true); modal.addSubmitButton(); modal.size(Modal.Size.Large); + modal.setWindowClosedCallback(target -> { + updateResultTable(target); + modal.show(false); + }); + setFooterVisibility(true); disableCheckBoxes(); } diff --git a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/reports/ReportTemplateDirectoryPanel.java b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/reports/ReportTemplateDirectoryPanel.java index 3860c78..40b2535 100644 --- a/client/idrepo/console/src/main/java/org/apache/syncope/client/console/reports/ReportTemplateDirectoryPanel.java +++ b/client/idrepo/console/src/main/java/org/apache/syncope/client/console/reports/ReportTemplateDirectoryPanel.java @@ -51,7 +51,6 @@ import org.apache.wicket.model.ResourceModel; import org.apache.wicket.model.StringResourceModel; import org.apache.syncope.client.console.reports.ReportTemplateDirectoryPanel.ReportTemplateProvider; import org.apache.syncope.client.console.rest.ReportRestClient; -import org.apache.syncope.client.console.wicket.markup.html.bootstrap.dialog.BaseModal.WindowClosedCallback; import org.apache.syncope.client.console.wicket.markup.html.form.ActionsPanel; import org.apache.syncope.client.console.wicket.markup.html.form.XMLEditorPanel; import org.apache.syncope.client.ui.commons.panels.WizardModalPanel; @@ -71,18 +70,11 @@ public class ReportTemplateDirectoryPanel modal.size(Modal.Size.Small); modal.addSubmitButton(); - setFooterVisibility(true); - - modal.setWindowClosedCallback(new WindowClosedCallback() { - - private static final long serialVersionUID = 8804221891699487139L; - - @Override - public void onClose(final AjaxRequestTarget target) { - updateResultTable(target); - modal.show(false); - } + modal.setWindowClosedCallback(target -> { + updateResultTable(target); + modal.show(false); }); + setFooterVisibility(true); addOuterObject(utilityModal); setWindowClosedReloadCallback(utilityModal);