Repository: syncope Updated Branches: refs/heads/master d34b48642 -> 7b1cb89bb
[SYNCOPE-733] Fix sorting table behavior Project: http://git-wip-us.apache.org/repos/asf/syncope/repo Commit: http://git-wip-us.apache.org/repos/asf/syncope/commit/7b1cb89b Tree: http://git-wip-us.apache.org/repos/asf/syncope/tree/7b1cb89b Diff: http://git-wip-us.apache.org/repos/asf/syncope/diff/7b1cb89b Branch: refs/heads/master Commit: 7b1cb89bba9b91df3a9153e9bceec5a53a2deec9 Parents: d34b486 Author: Marco Di Sabatino Di Diodoro <[email protected]> Authored: Wed Nov 25 11:43:30 2015 +0100 Committer: Marco Di Sabatino Di Diodoro <[email protected]> Committed: Wed Nov 25 11:43:30 2015 +0100 ---------------------------------------------------------------------- .../paging/AjaxDataNavigationToolbar.java | 1 - .../data/table/AjaxFallbackDataTable.java | 23 +++++++++++++++++++- 2 files changed, 22 insertions(+), 2 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/syncope/blob/7b1cb89b/client/console/src/main/java/org/apache/syncope/client/console/wicket/ajax/markup/html/navigation/paging/AjaxDataNavigationToolbar.java ---------------------------------------------------------------------- diff --git a/client/console/src/main/java/org/apache/syncope/client/console/wicket/ajax/markup/html/navigation/paging/AjaxDataNavigationToolbar.java b/client/console/src/main/java/org/apache/syncope/client/console/wicket/ajax/markup/html/navigation/paging/AjaxDataNavigationToolbar.java index 077521b..4316b47 100644 --- a/client/console/src/main/java/org/apache/syncope/client/console/wicket/ajax/markup/html/navigation/paging/AjaxDataNavigationToolbar.java +++ b/client/console/src/main/java/org/apache/syncope/client/console/wicket/ajax/markup/html/navigation/paging/AjaxDataNavigationToolbar.java @@ -44,7 +44,6 @@ public class AjaxDataNavigationToolbar extends AjaxNavigationToolbar { @Override protected void onAjaxEvent(final AjaxRequestTarget target) { - target.add(table); target.add(container); } }; http://git-wip-us.apache.org/repos/asf/syncope/blob/7b1cb89b/client/console/src/main/java/org/apache/syncope/client/console/wicket/extensions/markup/html/repeater/data/table/AjaxFallbackDataTable.java ---------------------------------------------------------------------- diff --git a/client/console/src/main/java/org/apache/syncope/client/console/wicket/extensions/markup/html/repeater/data/table/AjaxFallbackDataTable.java b/client/console/src/main/java/org/apache/syncope/client/console/wicket/extensions/markup/html/repeater/data/table/AjaxFallbackDataTable.java index 53096b2..5c7ccbb 100644 --- a/client/console/src/main/java/org/apache/syncope/client/console/wicket/extensions/markup/html/repeater/data/table/AjaxFallbackDataTable.java +++ b/client/console/src/main/java/org/apache/syncope/client/console/wicket/extensions/markup/html/repeater/data/table/AjaxFallbackDataTable.java @@ -20,7 +20,10 @@ package org.apache.syncope.client.console.wicket.extensions.markup.html.repeater import java.util.List; import org.apache.syncope.client.console.wicket.ajax.markup.html.navigation.paging.AjaxDataNavigationToolbar; +import org.apache.wicket.ajax.AjaxRequestTarget; +import org.apache.wicket.extensions.ajax.markup.html.repeater.data.sort.AjaxFallbackOrderByBorder; import org.apache.wicket.extensions.ajax.markup.html.repeater.data.table.AjaxFallbackHeadersToolbar; +import org.apache.wicket.extensions.markup.html.repeater.data.sort.ISortStateLocator; import org.apache.wicket.extensions.markup.html.repeater.data.table.DataTable; import org.apache.wicket.extensions.markup.html.repeater.data.table.IColumn; import org.apache.wicket.extensions.markup.html.repeater.data.table.ISortableDataProvider; @@ -40,7 +43,25 @@ public class AjaxFallbackDataTable<T, S> extends DataTable<T, S> { setOutputMarkupId(true); setVersioned(false); addTopToolbar(new AjaxDataNavigationToolbar(this, container)); - addTopToolbar(new AjaxFallbackHeadersToolbar<>(this, dataProvider)); + addTopToolbar(new AjaxFallbackHeadersToolbar<S>(this, dataProvider) { + + private static final long serialVersionUID = 7406306172424359609L; + + @Override + protected WebMarkupContainer newSortableHeader( + final String borderId, final S property, final ISortStateLocator<S> locator) { + return new AjaxFallbackOrderByBorder<S>(borderId, property, locator, getAjaxCallListener()) { + + private static final long serialVersionUID = 1L; + + @Override + protected void onAjaxClick(final AjaxRequestTarget target) { + target.add(container); + } + }; + } + + }); addBottomToolbar(new NoRecordsToolbar(this)); }
