diff --git a/lib/documentation/templates/api-events-section.js b/lib/documentation/templates/api-events-section.js index b7db70826b57..9b207791966d 100644 --- a/lib/documentation/templates/api-events-section.js +++ b/lib/documentation/templates/api-events-section.js @@ -23,8 +23,10 @@ module.exports = { {{#each this.parameters}} -
{{this.name}}
-
type: {{this.type}}
description: {{{this.description}}}
+
+
{{this.name}}
+
type: {{this.type}}
description: {{{this.description}}}
+
{{/each}} {{/each}} diff --git a/packages/main/src/List.js b/packages/main/src/List.js index 7c3f74044b6c..d5c1bafc44a7 100644 --- a/packages/main/src/List.js +++ b/packages/main/src/List.js @@ -171,12 +171,14 @@ const metadata = { * in SingleSelect and MultiSelect modes. * * @event - * @param {Array} items an array of the selected items. + * @param {Array} selectedItems an array of the selected items. + * @param {Array} previouslySelectedItems an array of the previously selected items. * @public */ selectionChange: { detail: { - items: { type: Array }, + selectedItems: { type: Array }, + previouslySelectedItems: { type: Array }, }, }, }, @@ -284,6 +286,7 @@ class List extends UI5Element { * ITEM SELECTION BASED ON THE CURRENT MODE */ onSelectionRequested(event) { + const previouslySelectedItems = this.getSelectedItems(); let selectionChange = false; this._selectionRequested = true; @@ -292,7 +295,7 @@ class List extends UI5Element { } if (selectionChange) { - this.fireEvent("selectionChange", { items: this.getSelectedItems() }); + this.fireEvent("selectionChange", { selectedItems: this.getSelectedItems(), previouslySelectedItems }); } } diff --git a/packages/main/test/playground/css/api.css b/packages/main/test/playground/css/api.css index 7d59646f5e6e..0d23cc495075 100644 --- a/packages/main/test/playground/css/api.css +++ b/packages/main/test/playground/css/api.css @@ -263,6 +263,12 @@ pre.prettyprint>xmp { padding: 1rem 0.8rem 1rem 1rem; } +.api-table-content-event-params-wrapper { + width: 100%; + display: flex; + align-items: flex-start; +} + .cell.api-table-content-cell.api-table-content-cell-description { font-size: 14px; flex: 1 50%; diff --git a/packages/main/test/sap/ui/webcomponents/main/pages/List.html b/packages/main/test/sap/ui/webcomponents/main/pages/List.html index 11cbcec013cc..9a955211162b 100644 --- a/packages/main/test/sap/ui/webcomponents/main/pages/List.html +++ b/packages/main/test/sap/ui/webcomponents/main/pages/List.html @@ -223,7 +223,7 @@

Items 3/3

resetBtn.addEventListener("ui5-press", resetList); singleSelectList.addEventListener("ui5-selectionChange", function (event) { - var selectedItems = event.detail.items; + var selectedItems = event.detail.selectedItems; alert("Selection changed: " + selectedItems.map(item => item.id).join("/")); }); @@ -234,7 +234,7 @@

Items 3/3

}); singleSelectEndList.addEventListener("ui5-selectionChange", function (event) { - var selectedItems = event.detail.items; + var selectedItems = event.detail.selectedItems; lblSelectionChange.innerHTML = "|Event] selectionChange :: " + selectedItems.map(item => item.id).join("/"); }); @@ -244,7 +244,7 @@

Items 3/3

}); multiSelectList.addEventListener("ui5-selectionChange", function (event) { - var selectedItems = event.detail.items; + var selectedItems = event.detail.selectedItems; lblSelectionChange2.innerHTML = "Event] selectionChange :: " + selectedItems.map(item => item.id).join("/"); }); diff --git a/packages/main/test/sap/ui/webcomponents/main/pages/List_test_page.html b/packages/main/test/sap/ui/webcomponents/main/pages/List_test_page.html index c92bc633f428..0065a7c43b04 100644 --- a/packages/main/test/sap/ui/webcomponents/main/pages/List_test_page.html +++ b/packages/main/test/sap/ui/webcomponents/main/pages/List_test_page.html @@ -20,6 +20,7 @@ + New Items @@ -63,6 +64,10 @@ selectionChangeCounter += 1; selectionChangeResultField.value = selectionChangeCounter; }); + + listEvents.addEventListener("ui5-selectionChange", function(event) { + selectionChangeResultPreviousItemsParameter.value = event.detail.previouslySelectedItems[0].id; + }) \ No newline at end of file diff --git a/packages/main/test/sap/ui/webcomponents/main/samples/List.sample.html b/packages/main/test/sap/ui/webcomponents/main/samples/List.sample.html index 23c1d2be3eab..58bbc463ddd2 100644 --- a/packages/main/test/sap/ui/webcomponents/main/samples/List.sample.html +++ b/packages/main/test/sap/ui/webcomponents/main/samples/List.sample.html @@ -69,7 +69,7 @@

List in Single-selection Mode