Index: fluid/components/src/webapp/fluid-components/js/fluid/Reorderer.js =================================================================== --- fluid/components/src/webapp/fluid-components/js/fluid/Reorderer.js (revision 5284) +++ fluid/components/src/webapp/fluid-components/js/fluid/Reorderer.js (working copy) @@ -792,7 +792,7 @@ this.moveItemRight = function (item) { var rightSiblingInfo = itemInfoFinders.getRightSiblingInfo (item, findItems.movables ()); moveItem (item, rightSiblingInfo, fluid.position.AFTER, fluid.position.BEFORE); - orderChangedCallback(); + orderChangedCallback(item); }; this.getLeftSibling = function (item) { @@ -802,7 +802,7 @@ this.moveItemLeft = function (item) { var leftSiblingInfo = itemInfoFinders.getLeftSiblingInfo (item, findItems.movables ()); moveItem (item, leftSiblingInfo, fluid.position.BEFORE, fluid.position.AFTER); - orderChangedCallback(); + orderChangedCallback(item); }; this.getItemBelow = this.getRightSibling; @@ -824,7 +824,7 @@ } else if (whereTo === fluid.position.AFTER) { jQuery (target).after (moving); } - orderChangedCallback(); + orderChangedCallback(moving); }; }; // End ListLayoutHandler @@ -856,7 +856,7 @@ this.moveItemDown = function (item) { var itemBelow = itemInfoFinders.getItemInfoBelow (item, findItems.movables ()); moveItem (item, itemBelow, fluid.position.AFTER, fluid.position.BEFORE); - orderChangedCallback(); + orderChangedCallback(item); }; this.getItemAbove = function (item) { @@ -866,7 +866,7 @@ this.moveItemUp = function (item) { var itemAbove = itemInfoFinders.getItemInfoAbove (item, findItems.movables ()); moveItem (item, itemAbove, fluid.position.BEFORE, fluid.position.AFTER); - orderChangedCallback(); + orderChangedCallback(item); }; // We need to override ListLayoutHandler.dropPosition to ensure that the local private @@ -905,7 +905,7 @@ var orderChangedCallback = options.orderChangedCallback || function () {}; if (options.orderChangedCallbackUrl) { // Create the orderChangedCallback function - orderChangedCallback = function () { + orderChangedCallback = function (item) { jQuery.post (options.orderChangedCallbackUrl, JSON.stringify (layout), function (data, textStatus) { @@ -956,7 +956,7 @@ } // otherwise it's either DISALLOWED or USE_LAST_KNOWN fluid.moduleLayout.updateLayout (item.id, relatedItem.id, position, layout); - orderChangedCallback (); + orderChangedCallback(item); }; var moveHorizontally = function (item, direction /* PREVIOUS, NEXT */) { Index: fluid/components/src/webapp/tests/fluid-tests/js/ListLayoutHandlerTests.js =================================================================== --- fluid/components/src/webapp/tests/fluid-tests/js/ListLayoutHandlerTests.js (revision 5284) +++ fluid/components/src/webapp/tests/fluid-tests/js/ListLayoutHandlerTests.js (working copy) @@ -105,6 +105,7 @@ var listItems = jQuery("li", jQuery("#list1")); jqUnit.assertFalse("Before move, orderChangedCallback should not have been called", orderChangedCallbackWasCalled); + jqUnit.assertFalse("No item was moved yet", itemThatWasMoved); jqUnit.assertEquals("Before moving anything, expect first is first", firstItemId, listItems[0].id); jqUnit.assertEquals("Before moving anything, expect second is second", secondItemId, listItems[1].id); jqUnit.assertEquals("Before moving anything, expect third is third", thirdItemId, listItems[2].id); @@ -116,6 +117,7 @@ var listItemsAfterMove = jQuery("li", jQuery("#list1")); jqUnit.assertTrue("After, callback should have been called", orderChangedCallbackWasCalled); + jqUnit.assertEquals("The first item was moved", listItems[0].id, itemThatWasMoved.id); jqUnit.assertEquals("After, expect second is first", secondItemId, listItemsAfterMove[0].id); jqUnit.assertEquals("After, expect first is second", firstItemId, listItemsAfterMove[1].id); jqUnit.assertEquals("After, expect third is third", thirdItemId, listItemsAfterMove[2].id); Index: fluid/components/src/webapp/tests/fluid-tests/js/UnorderedListTestConstants.js =================================================================== --- fluid/components/src/webapp/tests/fluid-tests/js/UnorderedListTestConstants.js (revision 5284) +++ fluid/components/src/webapp/tests/fluid-tests/js/UnorderedListTestConstants.js (working copy) @@ -27,6 +27,7 @@ var listHandler1; var orderChangedCallbackWasCalled; +var itemThatWasMoved; var findList1 = function () { return jQuery("#list1")[0]; @@ -38,8 +39,9 @@ return jQuery("[id^=list1item]", findList1()).get(); }; -var callbackConfirmer = function () { +var callbackConfirmer = function (item) { orderChangedCallbackWasCalled = true; + itemThatWasMoved = item; }; var createListLayoutHandler = function () {