File tree 7 files changed +37
-10
lines changed
lib/documentation/templates
sap/ui/webcomponents/main
7 files changed +37
-10
lines changed Original file line number Diff line number Diff line change @@ -23,8 +23,10 @@ module.exports = {
23
23
24
24
{{#each this.parameters}}
25
25
<tr class="api-table-event-param" >
26
- <div class="cell api-table-param-name api-table-content-cell api-table-content-cell-bold">{{this.name}}</div>
27
- <div class="cell api-table-event-param-cell api-table-content-cell api-table-content-cell-description"><strong class="bold" >type:</strong> {{this.type}} </br> <strong class="api-table-event-description bold">description:</strong> {{{this.description}}}</div>
26
+ <div class="api-table-content-event-params-wrapper">
27
+ <div class="cell api-table-param-name api-table-content-cell api-table-content-cell-bold">{{this.name}}</div>
28
+ <div class="cell api-table-event-param-cell api-table-content-cell api-table-content-cell-description"><strong class="bold" >type:</strong> {{this.type}} </br> <strong class="api-table-event-description bold">description:</strong> {{{this.description}}}</div>
29
+ </div>
28
30
</tr>
29
31
{{/each}}
30
32
{{/each}}
Original file line number Diff line number Diff line change @@ -171,12 +171,14 @@ const metadata = {
171
171
* in <code>SingleSelect</code> and <code>MultiSelect</code> modes.
172
172
*
173
173
* @event
174
- * @param {Array } items an array of the selected items.
174
+ * @param {Array } selectedItems an array of the selected items.
175
+ * @param {Array } previouslySelectedItems an array of the previously selected items.
175
176
* @public
176
177
*/
177
178
selectionChange : {
178
179
detail : {
179
- items : { type : Array } ,
180
+ selectedItems : { type : Array } ,
181
+ previouslySelectedItems : { type : Array } ,
180
182
} ,
181
183
} ,
182
184
} ,
@@ -284,6 +286,7 @@ class List extends UI5Element {
284
286
* ITEM SELECTION BASED ON THE CURRENT MODE
285
287
*/
286
288
onSelectionRequested ( event ) {
289
+ const previouslySelectedItems = this . getSelectedItems ( ) ;
287
290
let selectionChange = false ;
288
291
this . _selectionRequested = true ;
289
292
@@ -292,7 +295,7 @@ class List extends UI5Element {
292
295
}
293
296
294
297
if ( selectionChange ) {
295
- this . fireEvent ( "selectionChange" , { items : this . getSelectedItems ( ) } ) ;
298
+ this . fireEvent ( "selectionChange" , { selectedItems : this . getSelectedItems ( ) , previouslySelectedItems } ) ;
296
299
}
297
300
}
298
301
Original file line number Diff line number Diff line change @@ -263,6 +263,12 @@ pre.prettyprint>xmp {
263
263
padding : 1rem 0.8rem 1rem 1rem ;
264
264
}
265
265
266
+ .api-table-content-event-params-wrapper {
267
+ width : 100% ;
268
+ display : flex;
269
+ align-items : flex-start;
270
+ }
271
+
266
272
.cell .api-table-content-cell .api-table-content-cell-description {
267
273
font-size : 14px ;
268
274
flex : 1 50% ;
Original file line number Diff line number Diff line change @@ -223,7 +223,7 @@ <h3 id="infoLbl">Items 3/3</h3>
223
223
resetBtn . addEventListener ( "ui5-press" , resetList ) ;
224
224
225
225
singleSelectList . addEventListener ( "ui5-selectionChange" , function ( event ) {
226
- var selectedItems = event . detail . items ;
226
+ var selectedItems = event . detail . selectedItems ;
227
227
228
228
alert ( "Selection changed: " + selectedItems . map ( item => item . id ) . join ( "/" ) ) ;
229
229
} ) ;
@@ -234,7 +234,7 @@ <h3 id="infoLbl">Items 3/3</h3>
234
234
} ) ;
235
235
236
236
singleSelectEndList . addEventListener ( "ui5-selectionChange" , function ( event ) {
237
- var selectedItems = event . detail . items ;
237
+ var selectedItems = event . detail . selectedItems ;
238
238
lblSelectionChange . innerHTML = "|Event] selectionChange :: " + selectedItems . map ( item => item . id ) . join ( "/" ) ;
239
239
} ) ;
240
240
@@ -244,7 +244,7 @@ <h3 id="infoLbl">Items 3/3</h3>
244
244
} ) ;
245
245
246
246
multiSelectList . addEventListener ( "ui5-selectionChange" , function ( event ) {
247
- var selectedItems = event . detail . items ;
247
+ var selectedItems = event . detail . selectedItems ;
248
248
lblSelectionChange2 . innerHTML = "Event] selectionChange :: " + selectedItems . map ( item => item . id ) . join ( "/" ) ;
249
249
} ) ;
250
250
</ script >
Original file line number Diff line number Diff line change 20
20
</ ui5-list >
21
21
< ui5-input id ="itemPressResultField " placeholder ="itemPress result "> </ ui5-input >
22
22
< ui5-input id ="selectionChangeResultField " placeholder ="selectionChange result "> </ ui5-input >
23
+ < ui5-input id ="selectionChangeResultPreviousItemsParameter " placeholder ="selectionChange previousSelection result "> </ ui5-input >
23
24
24
25
< ui5-list id ="list1 " header-text ="API: GroupHeaderListItem ">
25
26
< ui5-li-groupheader > New Items</ ui5-li-groupheader >
63
64
selectionChangeCounter += 1 ;
64
65
selectionChangeResultField . value = selectionChangeCounter ;
65
66
} ) ;
67
+
68
+ listEvents . addEventListener ( "ui5-selectionChange" , function ( event ) {
69
+ selectionChangeResultPreviousItemsParameter . value = event . detail . previouslySelectedItems [ 0 ] . id ;
70
+ } )
66
71
</ script >
67
72
</ body >
68
73
</ html >
Original file line number Diff line number Diff line change @@ -69,7 +69,7 @@ <h3>List in Single-selection Mode</h3>
69
69
70
70
< script >
71
71
document . getElementById ( 'country-selector' ) . addEventListener ( "selectionChange" , function ( event ) {
72
- var selectedItems = event . detail . items ;
72
+ var selectedItems = event . detail . selectedItems ;
73
73
74
74
alert ( "The selected item: " + selectedItems [ 0 ] . textContent ) ;
75
75
} ) ;
@@ -85,7 +85,7 @@ <h3>List in Single-selection Mode</h3>
85
85
86
86
< script >
87
87
document . getElementById ( 'country-selector' ) . addEventListener ( "selectionChange" , function ( event ) {
88
- var selectedItems = event . detail . items ;
88
+ var selectedItems = event . detail . selectedItems ;
89
89
90
90
alert ( "The selected item: " + selectedItems [ 0 ] . textContent ) ;
91
91
} ) ;
Original file line number Diff line number Diff line change @@ -17,6 +17,17 @@ describe("Date Picker Tests", () => {
17
17
assert . strictEqual ( selectionChangeResultField . getProperty ( "value" ) , "1" , "selectionChange event has been fired." ) ;
18
18
} ) ;
19
19
20
+ it ( "selectionChange events provides previousSelection item" , ( ) => {
21
+ const list = $ ( "#listEvents" ) ;
22
+ const selectionChangeResultPreviousItemsParameter = $ ( "#selectionChangeResultPreviousItemsParameter" ) ;
23
+ const firstItem = $ ( "#listEvents #country1" ) ;
24
+ const secondItem = $ ( "#listEvents #country2" ) ;
25
+
26
+ firstItem . click ( ) ;
27
+
28
+ assert . strictEqual ( secondItem . getProperty ( "id" ) , selectionChangeResultPreviousItemsParameter . getProperty ( "value" ) ) ;
29
+ } ) ;
30
+
20
31
it ( "header text" , ( ) => {
21
32
list . id = "#list1" ;
22
33
You can’t perform that action at this time.
0 commit comments