@openui5/sap.m 1.117.1 → 1.118.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (434) hide show
  1. package/package.json +4 -4
  2. package/src/sap/m/.library +1 -1
  3. package/src/sap/m/AccButton.js +1 -1
  4. package/src/sap/m/ActionListItem.js +1 -1
  5. package/src/sap/m/ActionSelect.js +1 -1
  6. package/src/sap/m/ActionSheet.js +1 -1
  7. package/src/sap/m/ActionTile.js +1 -1
  8. package/src/sap/m/ActionTileContent.js +1 -1
  9. package/src/sap/m/AdditionalTextButton.js +1 -1
  10. package/src/sap/m/App.js +1 -1
  11. package/src/sap/m/AssociativeOverflowToolbar.js +1 -1
  12. package/src/sap/m/Avatar.js +1 -1
  13. package/src/sap/m/Bar.js +1 -1
  14. package/src/sap/m/Breadcrumbs.js +16 -1
  15. package/src/sap/m/BusyDialog.js +1 -1
  16. package/src/sap/m/BusyIndicator.js +1 -1
  17. package/src/sap/m/Button.js +7 -5
  18. package/src/sap/m/Carousel.js +1 -1
  19. package/src/sap/m/CarouselLayout.js +1 -1
  20. package/src/sap/m/CheckBox.js +1 -1
  21. package/src/sap/m/ColorPalette.js +1 -1
  22. package/src/sap/m/ColorPalettePopover.js +1 -1
  23. package/src/sap/m/Column.js +13 -26
  24. package/src/sap/m/ColumnHeaderPopover.js +1 -1
  25. package/src/sap/m/ColumnListItem.js +48 -12
  26. package/src/sap/m/ColumnListItemRenderer.js +96 -83
  27. package/src/sap/m/ColumnPopoverActionItem.js +1 -1
  28. package/src/sap/m/ColumnPopoverCustomItem.js +1 -1
  29. package/src/sap/m/ColumnPopoverItem.js +1 -1
  30. package/src/sap/m/ColumnPopoverSelectListItem.js +1 -1
  31. package/src/sap/m/ColumnPopoverSortItem.js +1 -1
  32. package/src/sap/m/ComboBox.js +1 -1
  33. package/src/sap/m/ComboBoxBase.js +1 -1
  34. package/src/sap/m/ComboBoxTextField.js +1 -1
  35. package/src/sap/m/CustomListItem.js +1 -1
  36. package/src/sap/m/CustomTile.js +1 -1
  37. package/src/sap/m/CustomTreeItem.js +1 -1
  38. package/src/sap/m/DatePicker.js +1 -1
  39. package/src/sap/m/DateRangeSelection.js +2 -2
  40. package/src/sap/m/DateTimeField.js +1 -1
  41. package/src/sap/m/DateTimeInput.js +1 -1
  42. package/src/sap/m/DateTimePicker.js +3 -3
  43. package/src/sap/m/Dialog.js +1 -1
  44. package/src/sap/m/DisplayListItem.js +1 -1
  45. package/src/sap/m/DraftIndicator.js +1 -1
  46. package/src/sap/m/DynamicDate.js +1 -1
  47. package/src/sap/m/DynamicDateFormat.js +4 -0
  48. package/src/sap/m/DynamicDateOption.js +2 -2
  49. package/src/sap/m/DynamicDateRange.js +119 -6
  50. package/src/sap/m/DynamicDateValueHelpUIType.js +1 -1
  51. package/src/sap/m/ExpandableText.js +1 -1
  52. package/src/sap/m/FacetFilter.js +2 -2
  53. package/src/sap/m/FacetFilterItem.js +6 -2
  54. package/src/sap/m/FacetFilterList.js +8 -5
  55. package/src/sap/m/FeedContent.js +1 -1
  56. package/src/sap/m/FeedInput.js +1 -1
  57. package/src/sap/m/FeedListItem.js +1 -1
  58. package/src/sap/m/FeedListItemAction.js +1 -1
  59. package/src/sap/m/Fiori20Adapter.js +2 -2
  60. package/src/sap/m/FlexBox.js +1 -1
  61. package/src/sap/m/FlexItemData.js +1 -1
  62. package/src/sap/m/FormattedText.js +1 -1
  63. package/src/sap/m/GenericTag.js +1 -1
  64. package/src/sap/m/GenericTile.js +37 -2
  65. package/src/sap/m/GroupHeaderListItem.js +2 -3
  66. package/src/sap/m/GroupHeaderListItemRenderer.js +36 -17
  67. package/src/sap/m/GrowingEnablement.js +10 -6
  68. package/src/sap/m/GrowingList.js +1 -1
  69. package/src/sap/m/HBox.js +1 -1
  70. package/src/sap/m/HeaderContainer.js +1 -1
  71. package/src/sap/m/HeaderContainerItemNavigator.js +1 -1
  72. package/src/sap/m/IconTabBar.js +2 -2
  73. package/src/sap/m/IconTabBarRenderer.js +1 -1
  74. package/src/sap/m/IconTabBarSelectList.js +1 -1
  75. package/src/sap/m/IconTabFilter.js +2 -2
  76. package/src/sap/m/IconTabFilterExpandButtonBadge.js +1 -1
  77. package/src/sap/m/IconTabHeader.js +4 -2
  78. package/src/sap/m/IconTabSeparator.js +1 -1
  79. package/src/sap/m/IllustratedMessage.js +1 -1
  80. package/src/sap/m/Illustration.js +59 -7
  81. package/src/sap/m/IllustrationPool.js +47 -13
  82. package/src/sap/m/Image.js +1 -1
  83. package/src/sap/m/ImageContent.js +1 -1
  84. package/src/sap/m/Input.js +1 -1
  85. package/src/sap/m/InputBase.js +1 -1
  86. package/src/sap/m/InputListItem.js +1 -1
  87. package/src/sap/m/Label.js +1 -1
  88. package/src/sap/m/LightBox.js +1 -1
  89. package/src/sap/m/LightBoxItem.js +1 -1
  90. package/src/sap/m/Link.js +1 -1
  91. package/src/sap/m/List.js +1 -16
  92. package/src/sap/m/ListBase.js +109 -148
  93. package/src/sap/m/ListBaseRenderer.js +5 -9
  94. package/src/sap/m/ListItemBase.js +35 -132
  95. package/src/sap/m/ListItemBaseRenderer.js +25 -2
  96. package/src/sap/m/MaskEnabler.js +1 -1
  97. package/src/sap/m/MaskInput.js +1 -1
  98. package/src/sap/m/MaskInputRule.js +1 -1
  99. package/src/sap/m/Menu.js +33 -18
  100. package/src/sap/m/MenuButton.js +1 -1
  101. package/src/sap/m/MenuItem.js +23 -1
  102. package/src/sap/m/MenuListItem.js +6 -5
  103. package/src/sap/m/MessageItem.js +1 -1
  104. package/src/sap/m/MessageListItem.js +1 -1
  105. package/src/sap/m/MessagePage.js +1 -1
  106. package/src/sap/m/MessagePopover.js +1 -1
  107. package/src/sap/m/MessagePopoverItem.js +1 -1
  108. package/src/sap/m/MessageStrip.js +1 -1
  109. package/src/sap/m/MessageToast.js +13 -9
  110. package/src/sap/m/MessageView.js +1 -1
  111. package/src/sap/m/MultiComboBox.js +3 -3
  112. package/src/sap/m/MultiEditField.js +1 -1
  113. package/src/sap/m/MultiInput.js +1 -1
  114. package/src/sap/m/NavContainer.js +17 -1
  115. package/src/sap/m/NewsContent.js +1 -1
  116. package/src/sap/m/NotificationList.js +1 -3
  117. package/src/sap/m/NotificationListBase.js +1 -1
  118. package/src/sap/m/NotificationListGroup.js +1 -1
  119. package/src/sap/m/NotificationListItem.js +1 -1
  120. package/src/sap/m/NumericContent.js +1 -1
  121. package/src/sap/m/NumericInput.js +1 -1
  122. package/src/sap/m/ObjectAttribute.js +1 -1
  123. package/src/sap/m/ObjectHeader.js +1 -1
  124. package/src/sap/m/ObjectIdentifier.js +1 -1
  125. package/src/sap/m/ObjectListItem.js +1 -1
  126. package/src/sap/m/ObjectListItemRenderer.js +7 -1
  127. package/src/sap/m/ObjectMarker.js +2 -2
  128. package/src/sap/m/ObjectNumber.js +1 -1
  129. package/src/sap/m/ObjectStatus.js +1 -1
  130. package/src/sap/m/OverflowToolbar.js +1 -1
  131. package/src/sap/m/OverflowToolbarAssociativePopover.js +1 -1
  132. package/src/sap/m/OverflowToolbarButton.js +1 -1
  133. package/src/sap/m/OverflowToolbarLayoutData.js +1 -1
  134. package/src/sap/m/OverflowToolbarMenuButton.js +1 -1
  135. package/src/sap/m/OverflowToolbarToggleButton.js +1 -1
  136. package/src/sap/m/P13nAnyFilterItem.js +1 -1
  137. package/src/sap/m/P13nColumnsItem.js +1 -1
  138. package/src/sap/m/P13nColumnsPanel.js +1 -1
  139. package/src/sap/m/P13nConditionPanel.js +1 -1
  140. package/src/sap/m/P13nDialog.js +1 -1
  141. package/src/sap/m/P13nDimMeasureItem.js +1 -1
  142. package/src/sap/m/P13nDimMeasurePanel.js +1 -1
  143. package/src/sap/m/P13nFilterItem.js +1 -1
  144. package/src/sap/m/P13nFilterPanel.js +8 -2
  145. package/src/sap/m/P13nGroupItem.js +1 -1
  146. package/src/sap/m/P13nGroupPanel.js +1 -1
  147. package/src/sap/m/P13nItem.js +1 -1
  148. package/src/sap/m/P13nPanel.js +1 -1
  149. package/src/sap/m/P13nSelectionItem.js +1 -1
  150. package/src/sap/m/P13nSelectionPanel.js +1 -1
  151. package/src/sap/m/P13nSortItem.js +1 -1
  152. package/src/sap/m/P13nSortPanel.js +1 -1
  153. package/src/sap/m/PDFViewer.js +1 -1
  154. package/src/sap/m/Page.js +1 -1
  155. package/src/sap/m/PageAccessibleLandmarkInfo.js +1 -1
  156. package/src/sap/m/PagingButton.js +1 -1
  157. package/src/sap/m/Panel.js +5 -1
  158. package/src/sap/m/PanelRenderer.js +6 -1
  159. package/src/sap/m/PlanningCalendar.js +37 -16
  160. package/src/sap/m/PlanningCalendarHeader.js +1 -1
  161. package/src/sap/m/PlanningCalendarLegend.js +1 -1
  162. package/src/sap/m/PlanningCalendarLegendRenderer.js +5 -2
  163. package/src/sap/m/PlanningCalendarRow.js +1 -1
  164. package/src/sap/m/PlanningCalendarView.js +1 -1
  165. package/src/sap/m/Popover.js +1 -1
  166. package/src/sap/m/ProgressIndicator.js +1 -1
  167. package/src/sap/m/PullToRefresh.js +1 -1
  168. package/src/sap/m/QuickView.js +1 -1
  169. package/src/sap/m/QuickViewBase.js +1 -1
  170. package/src/sap/m/QuickViewCard.js +1 -1
  171. package/src/sap/m/QuickViewGroup.js +1 -1
  172. package/src/sap/m/QuickViewGroupElement.js +1 -1
  173. package/src/sap/m/QuickViewPage.js +1 -1
  174. package/src/sap/m/RadioButton.js +1 -1
  175. package/src/sap/m/RadioButtonGroup.js +1 -1
  176. package/src/sap/m/RangeSlider.js +1 -1
  177. package/src/sap/m/RatingIndicator.js +1 -1
  178. package/src/sap/m/ResponsivePopover.js +1 -1
  179. package/src/sap/m/ResponsiveScale.js +1 -1
  180. package/src/sap/m/ScrollBar.js +1 -1
  181. package/src/sap/m/ScrollContainer.js +1 -1
  182. package/src/sap/m/SearchField.js +1 -1
  183. package/src/sap/m/SegmentedButton.js +1 -1
  184. package/src/sap/m/SegmentedButtonItem.js +1 -1
  185. package/src/sap/m/Select.js +1 -1
  186. package/src/sap/m/SelectDialog.js +1 -1
  187. package/src/sap/m/SelectDialogBase.js +1 -1
  188. package/src/sap/m/SelectList.js +1 -1
  189. package/src/sap/m/SelectionDetails.js +1 -1
  190. package/src/sap/m/SelectionDetailsFacade.js +2 -2
  191. package/src/sap/m/SelectionDetailsItem.js +1 -1
  192. package/src/sap/m/SelectionDetailsItemLine.js +1 -1
  193. package/src/sap/m/Shell.js +1 -1
  194. package/src/sap/m/SimpleFixFlex.js +1 -1
  195. package/src/sap/m/SinglePlanningCalendar.js +1 -1
  196. package/src/sap/m/SinglePlanningCalendarDayView.js +1 -1
  197. package/src/sap/m/SinglePlanningCalendarGrid.js +12 -2
  198. package/src/sap/m/SinglePlanningCalendarGridRenderer.js +1 -1
  199. package/src/sap/m/SinglePlanningCalendarMonthGrid.js +32 -15
  200. package/src/sap/m/SinglePlanningCalendarMonthGridRenderer.js +8 -22
  201. package/src/sap/m/SinglePlanningCalendarMonthView.js +1 -1
  202. package/src/sap/m/SinglePlanningCalendarView.js +1 -1
  203. package/src/sap/m/SinglePlanningCalendarWeekView.js +1 -1
  204. package/src/sap/m/SinglePlanningCalendarWorkWeekView.js +1 -1
  205. package/src/sap/m/SlideTile.js +1 -1
  206. package/src/sap/m/Slider.js +1 -1
  207. package/src/sap/m/SliderTooltip.js +1 -1
  208. package/src/sap/m/SliderTooltipBase.js +1 -1
  209. package/src/sap/m/SliderTooltipContainer.js +1 -1
  210. package/src/sap/m/SplitApp.js +1 -1
  211. package/src/sap/m/SplitButton.js +1 -1
  212. package/src/sap/m/SplitContainer.js +1 -1
  213. package/src/sap/m/StandardDynamicDateOption.js +1 -1
  214. package/src/sap/m/StandardListItem.js +1 -1
  215. package/src/sap/m/StandardTile.js +1 -1
  216. package/src/sap/m/StandardTreeItem.js +1 -1
  217. package/src/sap/m/StepInput.js +1 -1
  218. package/src/sap/m/SuggestionItem.js +1 -1
  219. package/src/sap/m/SuggestionsPopover.js +1 -1
  220. package/src/sap/m/Switch.js +1 -1
  221. package/src/sap/m/TabContainer.js +1 -1
  222. package/src/sap/m/TabContainerItem.js +1 -1
  223. package/src/sap/m/TabStrip.js +5 -3
  224. package/src/sap/m/TabStripItem.js +1 -1
  225. package/src/sap/m/Table.js +162 -141
  226. package/src/sap/m/TablePersoController.js +1 -1
  227. package/src/sap/m/TablePersoDialog.js +1 -1
  228. package/src/sap/m/TablePersoProvider.js +1 -1
  229. package/src/sap/m/TableRenderer.js +123 -90
  230. package/src/sap/m/TableSelectDialog.js +1 -1
  231. package/src/sap/m/Text.js +1 -1
  232. package/src/sap/m/TextArea.js +1 -1
  233. package/src/sap/m/Tile.js +1 -1
  234. package/src/sap/m/TileContainer.js +1 -1
  235. package/src/sap/m/TileContent.js +1 -1
  236. package/src/sap/m/TimePicker.js +1 -1
  237. package/src/sap/m/TimePickerClock.js +1 -1
  238. package/src/sap/m/TimePickerClocks.js +1 -1
  239. package/src/sap/m/TimePickerInputs.js +1 -1
  240. package/src/sap/m/TimePickerInternals.js +1 -1
  241. package/src/sap/m/TimePickerSlider.js +1 -4
  242. package/src/sap/m/TimePickerSliders.js +1 -1
  243. package/src/sap/m/Title.js +1 -1
  244. package/src/sap/m/TitlePropagationSupport.js +1 -1
  245. package/src/sap/m/ToggleButton.js +3 -1
  246. package/src/sap/m/Token.js +1 -1
  247. package/src/sap/m/Tokenizer.js +25 -4
  248. package/src/sap/m/Toolbar.js +1 -1
  249. package/src/sap/m/ToolbarLayoutData.js +1 -1
  250. package/src/sap/m/ToolbarSeparator.js +1 -1
  251. package/src/sap/m/ToolbarSpacer.js +1 -1
  252. package/src/sap/m/Tree.js +1 -1
  253. package/src/sap/m/TreeItemBase.js +1 -1
  254. package/src/sap/m/UploadCollection.js +1 -1
  255. package/src/sap/m/UploadCollectionItem.js +1 -1
  256. package/src/sap/m/UploadCollectionParameter.js +1 -1
  257. package/src/sap/m/UploadCollectionToolbarPlaceholder.js +1 -1
  258. package/src/sap/m/VBox.js +1 -1
  259. package/src/sap/m/ValueStateHeader.js +1 -1
  260. package/src/sap/m/VariantManagement.js +73 -19
  261. package/src/sap/m/ViewSettingsCustomItem.js +1 -1
  262. package/src/sap/m/ViewSettingsCustomTab.js +1 -1
  263. package/src/sap/m/ViewSettingsDialog.js +23 -18
  264. package/src/sap/m/ViewSettingsFilterItem.js +1 -1
  265. package/src/sap/m/ViewSettingsItem.js +1 -1
  266. package/src/sap/m/VisibleItem.js +1 -1
  267. package/src/sap/m/WheelSlider.js +1 -1
  268. package/src/sap/m/WheelSliderContainer.js +1 -1
  269. package/src/sap/m/Wizard.js +1 -1
  270. package/src/sap/m/WizardProgressNavigator.js +1 -1
  271. package/src/sap/m/WizardStep.js +1 -1
  272. package/src/sap/m/changeHandler/AddTableColumn.js +1 -1
  273. package/src/sap/m/changeHandler/ChangeLinkTarget.js +1 -1
  274. package/src/sap/m/changeHandler/CombineButtons.js +1 -1
  275. package/src/sap/m/changeHandler/MoveTableColumns.js +1 -1
  276. package/src/sap/m/changeHandler/SelectIconTabBarFilter.js +1 -1
  277. package/src/sap/m/changeHandler/SplitMenuButton.js +1 -1
  278. package/src/sap/m/designtime/IconTabBar.designtime.js +20 -1
  279. package/src/sap/m/designtime/IconTabFilter.designtime.js +12 -3
  280. package/src/sap/m/library.js +106 -19
  281. package/src/sap/m/messagebundle.properties +38 -16
  282. package/src/sap/m/messagebundle_ar.properties +15 -8
  283. package/src/sap/m/messagebundle_bg.properties +15 -8
  284. package/src/sap/m/messagebundle_ca.properties +15 -8
  285. package/src/sap/m/messagebundle_cs.properties +15 -8
  286. package/src/sap/m/messagebundle_cy.properties +15 -8
  287. package/src/sap/m/messagebundle_da.properties +14 -7
  288. package/src/sap/m/messagebundle_de.properties +15 -8
  289. package/src/sap/m/messagebundle_el.properties +15 -8
  290. package/src/sap/m/messagebundle_en.properties +8 -1
  291. package/src/sap/m/messagebundle_en_GB.properties +8 -1
  292. package/src/sap/m/messagebundle_en_US_sappsd.properties +7 -0
  293. package/src/sap/m/messagebundle_en_US_saprigi.properties +7 -0
  294. package/src/sap/m/messagebundle_en_US_saptrc.properties +7 -0
  295. package/src/sap/m/messagebundle_es.properties +15 -8
  296. package/src/sap/m/messagebundle_es_MX.properties +15 -8
  297. package/src/sap/m/messagebundle_et.properties +14 -7
  298. package/src/sap/m/messagebundle_fi.properties +15 -8
  299. package/src/sap/m/messagebundle_fr.properties +17 -10
  300. package/src/sap/m/messagebundle_fr_CA.properties +16 -9
  301. package/src/sap/m/messagebundle_hi.properties +15 -8
  302. package/src/sap/m/messagebundle_hr.properties +15 -8
  303. package/src/sap/m/messagebundle_hu.properties +15 -8
  304. package/src/sap/m/messagebundle_id.properties +21 -14
  305. package/src/sap/m/messagebundle_it.properties +15 -8
  306. package/src/sap/m/messagebundle_iw.properties +15 -8
  307. package/src/sap/m/messagebundle_ja.properties +15 -8
  308. package/src/sap/m/messagebundle_kk.properties +15 -8
  309. package/src/sap/m/messagebundle_ko.properties +15 -8
  310. package/src/sap/m/messagebundle_lt.properties +15 -8
  311. package/src/sap/m/messagebundle_lv.properties +15 -8
  312. package/src/sap/m/messagebundle_ms.properties +15 -8
  313. package/src/sap/m/messagebundle_nl.properties +60 -53
  314. package/src/sap/m/messagebundle_no.properties +17 -10
  315. package/src/sap/m/messagebundle_pl.properties +15 -8
  316. package/src/sap/m/messagebundle_pt.properties +15 -8
  317. package/src/sap/m/messagebundle_pt_PT.properties +15 -8
  318. package/src/sap/m/messagebundle_ro.properties +15 -8
  319. package/src/sap/m/messagebundle_ru.properties +15 -8
  320. package/src/sap/m/messagebundle_sh.properties +15 -8
  321. package/src/sap/m/messagebundle_sk.properties +15 -8
  322. package/src/sap/m/messagebundle_sl.properties +15 -8
  323. package/src/sap/m/messagebundle_sv.properties +15 -8
  324. package/src/sap/m/messagebundle_th.properties +15 -8
  325. package/src/sap/m/messagebundle_tr.properties +15 -8
  326. package/src/sap/m/messagebundle_uk.properties +15 -8
  327. package/src/sap/m/messagebundle_vi.properties +15 -8
  328. package/src/sap/m/messagebundle_zh_CN.properties +15 -8
  329. package/src/sap/m/messagebundle_zh_TW.properties +15 -8
  330. package/src/sap/m/p13n/AbstractContainer.js +2 -2
  331. package/src/sap/m/p13n/AbstractContainerItem.js +2 -2
  332. package/src/sap/m/p13n/BasePanel.js +3 -3
  333. package/src/sap/m/p13n/Container.js +1 -15
  334. package/src/sap/m/p13n/Engine.js +42 -8
  335. package/src/sap/m/p13n/GroupController.js +1 -1
  336. package/src/sap/m/p13n/GroupPanel.js +1 -1
  337. package/src/sap/m/p13n/Popup.js +3 -3
  338. package/src/sap/m/p13n/QueryPanel.js +7 -2
  339. package/src/sap/m/p13n/SelectionController.js +1 -1
  340. package/src/sap/m/p13n/SelectionPanel.js +1 -1
  341. package/src/sap/m/p13n/SortController.js +1 -1
  342. package/src/sap/m/p13n/SortPanel.js +1 -1
  343. package/src/sap/m/p13n/enum/PersistenceMode.js +1 -1
  344. package/src/sap/m/p13n/enum/ProcessingStrategy.js +10 -1
  345. package/src/sap/m/p13n/handler/xConfigHandler.js +6 -5
  346. package/src/sap/m/p13n/modification/FlexModificationHandler.js +16 -3
  347. package/src/sap/m/p13n/modules/DefaultProviderRegistry.js +1 -1
  348. package/src/sap/m/p13n/modules/StateHandlerRegistry.js +1 -1
  349. package/src/sap/m/p13n/modules/UIManager.js +1 -1
  350. package/src/sap/m/p13n/modules/xConfigAPI.js +5 -0
  351. package/src/sap/m/plugins/CellSelector.js +60 -18
  352. package/src/sap/m/plugins/ColumnResizer.js +3 -5
  353. package/src/sap/m/plugins/CopyProvider.js +1 -1
  354. package/src/sap/m/plugins/DataStateIndicator.js +4 -2
  355. package/src/sap/m/plugins/PasteProvider.js +1 -1
  356. package/src/sap/m/plugins/PluginBase.js +1 -1
  357. package/src/sap/m/semantic/AddAction.js +1 -1
  358. package/src/sap/m/semantic/CancelAction.js +1 -1
  359. package/src/sap/m/semantic/DeleteAction.js +1 -1
  360. package/src/sap/m/semantic/DetailPage.js +1 -1
  361. package/src/sap/m/semantic/DiscussInJamAction.js +1 -1
  362. package/src/sap/m/semantic/EditAction.js +1 -1
  363. package/src/sap/m/semantic/FavoriteAction.js +1 -1
  364. package/src/sap/m/semantic/FilterAction.js +1 -1
  365. package/src/sap/m/semantic/FilterSelect.js +1 -1
  366. package/src/sap/m/semantic/FlagAction.js +1 -1
  367. package/src/sap/m/semantic/ForwardAction.js +1 -1
  368. package/src/sap/m/semantic/FullscreenPage.js +1 -1
  369. package/src/sap/m/semantic/GroupAction.js +1 -1
  370. package/src/sap/m/semantic/GroupSelect.js +1 -1
  371. package/src/sap/m/semantic/MainAction.js +1 -1
  372. package/src/sap/m/semantic/MasterPage.js +1 -1
  373. package/src/sap/m/semantic/MessagesIndicator.js +1 -1
  374. package/src/sap/m/semantic/MultiSelectAction.js +1 -1
  375. package/src/sap/m/semantic/NegativeAction.js +1 -1
  376. package/src/sap/m/semantic/OpenInAction.js +1 -1
  377. package/src/sap/m/semantic/PositiveAction.js +1 -1
  378. package/src/sap/m/semantic/PrintAction.js +1 -1
  379. package/src/sap/m/semantic/SaveAction.js +1 -1
  380. package/src/sap/m/semantic/Segment.js +1 -1
  381. package/src/sap/m/semantic/SegmentedContainer.js +1 -1
  382. package/src/sap/m/semantic/SemanticButton.js +1 -1
  383. package/src/sap/m/semantic/SemanticConfiguration.js +1 -1
  384. package/src/sap/m/semantic/SemanticControl.js +1 -1
  385. package/src/sap/m/semantic/SemanticOverflowToolbarButton.js +1 -1
  386. package/src/sap/m/semantic/SemanticOverflowToolbarToggleButton.js +1 -1
  387. package/src/sap/m/semantic/SemanticPage.js +1 -1
  388. package/src/sap/m/semantic/SemanticSelect.js +1 -1
  389. package/src/sap/m/semantic/SemanticToggleButton.js +1 -1
  390. package/src/sap/m/semantic/SendEmailAction.js +1 -1
  391. package/src/sap/m/semantic/SendMessageAction.js +1 -1
  392. package/src/sap/m/semantic/ShareInJamAction.js +1 -1
  393. package/src/sap/m/semantic/ShareMenu.js +1 -1
  394. package/src/sap/m/semantic/ShareMenuPage.js +1 -1
  395. package/src/sap/m/semantic/SortAction.js +1 -1
  396. package/src/sap/m/semantic/SortSelect.js +1 -1
  397. package/src/sap/m/table/Util.js +19 -2
  398. package/src/sap/m/table/columnmenu/ActionItem.js +1 -1
  399. package/src/sap/m/table/columnmenu/Entry.js +1 -1
  400. package/src/sap/m/table/columnmenu/Item.js +32 -3
  401. package/src/sap/m/table/columnmenu/ItemBase.js +1 -1
  402. package/src/sap/m/table/columnmenu/Menu.js +12 -9
  403. package/src/sap/m/table/columnmenu/QuickAction.js +1 -1
  404. package/src/sap/m/table/columnmenu/QuickActionBase.js +1 -1
  405. package/src/sap/m/table/columnmenu/QuickActionItem.js +1 -1
  406. package/src/sap/m/table/columnmenu/QuickGroup.js +1 -1
  407. package/src/sap/m/table/columnmenu/QuickGroupItem.js +1 -1
  408. package/src/sap/m/table/columnmenu/QuickSort.js +1 -1
  409. package/src/sap/m/table/columnmenu/QuickSortItem.js +1 -1
  410. package/src/sap/m/table/columnmenu/QuickTotal.js +1 -1
  411. package/src/sap/m/table/columnmenu/QuickTotalItem.js +1 -1
  412. package/src/sap/m/themes/base/Avatar.less +5 -5
  413. package/src/sap/m/themes/base/CellSelector.less +9 -0
  414. package/src/sap/m/themes/base/ColumnListItem.less +12 -8
  415. package/src/sap/m/themes/base/DateTimePicker.less +9 -1
  416. package/src/sap/m/themes/base/FeedListItem.less +3 -2
  417. package/src/sap/m/themes/base/GroupHeaderListItem.less +4 -6
  418. package/src/sap/m/themes/base/IconTabBar.less +13 -0
  419. package/src/sap/m/themes/base/ListItemBase.less +9 -6
  420. package/src/sap/m/themes/base/ObjectStatus.less +6 -0
  421. package/src/sap/m/themes/base/Panel.less +2 -5
  422. package/src/sap/m/themes/base/SinglePlanningCalendarMonthGrid.less +9 -6
  423. package/src/sap/m/themes/base/Table.less +30 -12
  424. package/src/sap/m/themes/base/TimePicker.less +1 -0
  425. package/src/sap/m/themes/base/Toolbar.less +3 -1
  426. package/src/sap/m/themes/base/UploadCollection.less +0 -1
  427. package/src/sap/m/themes/base/VariantManagement.less +8 -0
  428. package/src/sap/m/themes/base/ViewSettingsDialog.less +3 -0
  429. package/src/sap/m/upload/FilePreviewDialog.js +224 -115
  430. package/src/sap/m/upload/UploadSet.js +2 -3
  431. package/src/sap/m/upload/UploadSetItem.js +3 -2
  432. package/src/sap/m/upload/UploadSetTable.js +173 -159
  433. package/src/sap/m/upload/UploadSetTableItem.js +40 -45
  434. package/src/sap/m/upload/UploadSetToolbarPlaceholder.js +1 -1
@@ -63,9 +63,6 @@ function(
63
63
  // shortcut for sap.m.ListType
64
64
  var ListItemType = library.ListType;
65
65
 
66
- // shortcut for sap.m.ListKeyboardMode
67
- var ListKeyboardMode = library.ListKeyboardMode;
68
-
69
66
  // shortcut for sap.m.ListGrowingDirection
70
67
  var ListGrowingDirection = library.ListGrowingDirection;
71
68
 
@@ -108,7 +105,7 @@ function(
108
105
  * @extends sap.ui.core.Control
109
106
  *
110
107
  * @author SAP SE
111
- * @version 1.117.1
108
+ * @version 1.118.0
112
109
  *
113
110
  * @constructor
114
111
  * @public
@@ -264,7 +261,7 @@ function(
264
261
  * Defines keyboard handling behavior of the control.
265
262
  * @since 1.38.0
266
263
  */
267
- keyboardMode : {type : "sap.m.ListKeyboardMode", group : "Behavior", defaultValue : ListKeyboardMode.Navigation},
264
+ keyboardMode : {type : "sap.m.ListKeyboardMode", group : "Behavior", defaultValue : "Navigation" },
268
265
 
269
266
  /**
270
267
  * Defines the section of the control that remains fixed at the top of the page during vertical scrolling as long as the control is in the viewport.
@@ -2024,12 +2021,14 @@ function(
2024
2021
  sStates += oBundle.getText("LIST_REQUIRED") + " ";
2025
2022
  }
2026
2023
 
2027
- if (sMode == mMode.MultiSelect) {
2028
- sStates += oBundle.getText("LIST_MULTISELECTABLE") + " . ";
2029
- } else if (sMode == mMode.Delete) {
2024
+ if (sMode == mMode.Delete) {
2030
2025
  sStates += oBundle.getText("LIST_DELETABLE") + " . ";
2031
- } else if (sMode != mMode.None) {
2032
- sStates += oBundle.getText("LIST_SELECTABLE") + " . ";
2026
+ } else if (this.getAriaRole() == "list") {
2027
+ if (sMode == mMode.MultiSelect) {
2028
+ sStates += oBundle.getText("LIST_MULTISELECTABLE") + " . ";
2029
+ } else if (sMode != mMode.None) {
2030
+ sStates += oBundle.getText("LIST_SELECTABLE") + " . ";
2031
+ }
2033
2032
  }
2034
2033
 
2035
2034
  if (this.isGrouped()) {
@@ -2047,11 +2046,10 @@ function(
2047
2046
  };
2048
2047
 
2049
2048
  ListBase.prototype.getAccessbilityPosition = function(oItem) {
2050
- var iSetSize = 0,
2049
+ var iSetSize, iPosInSet,
2051
2050
  aItems = this.getVisibleItems(),
2052
2051
  sAriaRole = this.getAriaRole(),
2053
- // exclude group headers from item count for role="list" || role="listbox" only
2054
- bExcludeGroupHeaderFromCount = sAriaRole === "list" || sAriaRole === "listbox";
2052
+ bExcludeGroupHeaderFromCount = (sAriaRole === "list" || sAriaRole === "listbox");
2055
2053
 
2056
2054
  if (bExcludeGroupHeaderFromCount) {
2057
2055
  aItems = aItems.filter(function(oItem) {
@@ -2059,13 +2057,14 @@ function(
2059
2057
  });
2060
2058
  }
2061
2059
 
2062
- var iPosInset = aItems.indexOf(oItem) + 1,
2063
- oBinding = this.getBinding("items");
2060
+ if (oItem) {
2061
+ iPosInSet = aItems.indexOf(oItem) + 1;
2062
+ }
2064
2063
 
2065
- // use binding length if list is in scroll to load growing mode
2066
- if (this.getGrowing() && this.getGrowingScrollToLoad() && oBinding && oBinding.isLengthFinal()) {
2064
+ var oBinding = this.getBinding("items");
2065
+ if (oBinding && this.getGrowing() && this.getGrowingScrollToLoad()) {
2067
2066
  iSetSize = oBinding.getLength();
2068
- if (oBinding.isGrouped() && !bExcludeGroupHeaderFromCount) {
2067
+ if (!bExcludeGroupHeaderFromCount && oBinding.isGrouped()) {
2069
2068
  iSetSize += aItems.filter(function(oItem) {
2070
2069
  return oItem.isGroupHeader();
2071
2070
  }).length;
@@ -2075,8 +2074,8 @@ function(
2075
2074
  }
2076
2075
 
2077
2076
  return {
2078
- setSize: iSetSize,
2079
- posInset: iPosInset
2077
+ setsize: iSetSize,
2078
+ posinset: iPosInSet
2080
2079
  };
2081
2080
  };
2082
2081
 
@@ -2099,11 +2098,11 @@ function(
2099
2098
  // prepare the announcement for the screen reader
2100
2099
  var oAccInfo = oItem.getAccessibilityInfo(),
2101
2100
  oBundle = Library.getResourceBundleFor("sap.m"),
2102
- sDescription = oItem.isGroupHeader() ? "" : oAccInfo.type + " . ";
2101
+ sDescription = oAccInfo.type ? oAccInfo.type + " . " : "";
2103
2102
 
2104
2103
  if (this.isA("sap.m.Table")) {
2105
2104
  var mPosition = this.getAccessbilityPosition(oItem);
2106
- sDescription += oBundle.getText("LIST_ITEM_POSITION", [mPosition.posInset, mPosition.setSize]) + " . ";
2105
+ sDescription += oBundle.getText("LIST_ITEM_POSITION", [mPosition.posinset, mPosition.setsize]) + " . ";
2107
2106
  }
2108
2107
 
2109
2108
  sDescription += oAccInfo.description;
@@ -2144,13 +2143,12 @@ function(
2144
2143
  ListBase.prototype._startItemNavigation = function(bIfNeeded) {
2145
2144
 
2146
2145
  // item navigation only for desktop
2147
- if (!Device.system.desktop) {
2146
+ var oDomRef = this.getDomRef();
2147
+ if (!Device.system.desktop || !oDomRef) {
2148
2148
  return;
2149
2149
  }
2150
2150
 
2151
2151
  // focus on root element should be prevented by showNoData=false and there a no items & destroy ItemNavigation
2152
- var oDomRef = this.getDomRef();
2153
-
2154
2152
  if (!this.getShowNoData() && !this.getVisibleItems().length && oDomRef) {
2155
2153
  oDomRef.classList.add("sapMListPreventFocus");
2156
2154
  this._destroyItemNavigation();
@@ -2161,22 +2159,11 @@ function(
2161
2159
  oDomRef.classList.remove("sapMListPreventFocus");
2162
2160
  }
2163
2161
 
2164
- var sKeyboardMode = this.getKeyboardMode(),
2165
- mKeyboardMode = ListKeyboardMode;
2166
-
2167
- // ItemNavigation is not necessary if there is no item in edit mode
2168
- if (sKeyboardMode == mKeyboardMode.Edit && !this.getItems(true).length) {
2169
- return;
2170
- }
2171
-
2172
2162
  // if focus is not on the navigation items then only invalidate the item navigation
2173
2163
  var oNavigationRoot = this.getNavigationRoot();
2174
- var iTabIndex = (sKeyboardMode == mKeyboardMode.Edit) ? -1 : 0;
2175
2164
  if (bIfNeeded && oNavigationRoot && !oNavigationRoot.contains(document.activeElement)) {
2176
2165
  this._bItemNavigationInvalidated = true;
2177
- if (!oNavigationRoot.getAttribute("tabindex")) {
2178
- oNavigationRoot.tabIndex = iTabIndex;
2179
- }
2166
+ oNavigationRoot.tabIndex = "0";
2180
2167
  return;
2181
2168
  }
2182
2169
 
@@ -2186,8 +2173,9 @@ function(
2186
2173
  this._oItemNavigation.setCycling(false);
2187
2174
  this.addDelegate(this._oItemNavigation);
2188
2175
 
2189
- // set the tab index of active items
2190
- this._setItemNavigationTabIndex(iTabIndex);
2176
+ // set the tab index of navigation root
2177
+ this._oItemNavigation.setTabIndex0(0);
2178
+ this._oItemNavigation.iActiveTabIndex = -1;
2191
2179
 
2192
2180
  // explicitly setting table mode with one column
2193
2181
  // to disable up/down reaction on events of the cell
@@ -2249,46 +2237,6 @@ function(
2249
2237
  return this._oItemNavigation;
2250
2238
  };
2251
2239
 
2252
- // sets the active elements tabindex of ItemNavigation
2253
- ListBase.prototype._setItemNavigationTabIndex = function(iTabIndex) {
2254
- if (this._oItemNavigation) {
2255
- this._oItemNavigation.iActiveTabIndex = iTabIndex;
2256
- this._oItemNavigation.iTabIndex = iTabIndex;
2257
- }
2258
- };
2259
-
2260
- ListBase.prototype.setKeyboardMode = function(sKeyboardMode) {
2261
- this.setProperty("keyboardMode", sKeyboardMode, true);
2262
-
2263
- if (this.isActive()) {
2264
- var iTabIndex = (sKeyboardMode == ListKeyboardMode.Edit) ? -1 : 0;
2265
- this.$("nodata").prop("tabIndex", ~iTabIndex);
2266
- this.$("listUl").prop("tabIndex", iTabIndex);
2267
- this.$("after").prop("tabIndex", iTabIndex);
2268
- this._setItemNavigationTabIndex(iTabIndex);
2269
- }
2270
-
2271
- return this;
2272
- };
2273
-
2274
- /*
2275
- * Makes the given ListItem(row) focusable via ItemNavigation
2276
- *
2277
- * @since 1.26
2278
- * @protected
2279
- */
2280
- ListBase.prototype.setItemFocusable = function(oListItem) {
2281
- if (!this._oItemNavigation) {
2282
- return;
2283
- }
2284
-
2285
- var aItemDomRefs = this._oItemNavigation.getItemDomRefs();
2286
- var iIndex = aItemDomRefs.indexOf(oListItem.getDomRef());
2287
- if (iIndex >= 0) {
2288
- this._oItemNavigation.setFocusedIndex(iIndex);
2289
- }
2290
- };
2291
-
2292
2240
  /*
2293
2241
  * Forward tab before or after List
2294
2242
  * This function should be called before tab key is pressed
@@ -2303,33 +2251,19 @@ function(
2303
2251
  this.$(bForward ? "after" : "before").trigger("focus");
2304
2252
  };
2305
2253
 
2306
- // move focus out of the table for nodata row
2307
- ListBase.prototype.onsaptabnext = function(oEvent) {
2308
- if (oEvent.isMarked() || this.getKeyboardMode() == ListKeyboardMode.Edit) {
2254
+ // move focus out of the list
2255
+ ListBase.prototype.onsaptabnext = ListBase.prototype.onsaptabprevious = function(oEvent) {
2256
+ if (oEvent.isMarked() || oEvent.target.id == this.getId("trigger")) {
2309
2257
  return;
2310
2258
  }
2311
2259
 
2312
- if (jQuery(this.getDomRef("nodata")).find(":sapTabbable").addBack().get(-1) == oEvent.target) {
2313
- this.forwardTab(true);
2260
+ if (oEvent.target.matches(".sapMLIBFocusable,.sapMTblCellFocusable") ||
2261
+ oEvent.target === jQuery(this.getNavigationRoot()).find(":sapTabbable").get(oEvent.type == "saptabnext" ? -1 : 0)) {
2262
+ this.forwardTab(oEvent.type == "saptabnext");
2314
2263
  oEvent.setMarked();
2315
2264
  }
2316
2265
  };
2317
2266
 
2318
- // move focus out of the table for nodata row
2319
- ListBase.prototype.onsaptabprevious = function(oEvent) {
2320
- if (oEvent.isMarked() || this.getKeyboardMode() == ListKeyboardMode.Edit) {
2321
- return;
2322
- }
2323
-
2324
- var sTargetId = oEvent.target.id;
2325
- if (sTargetId == this.getId("nodata")) {
2326
- this.forwardTab(false);
2327
- } else if (sTargetId == this.getId("trigger")) {
2328
- this.focusPrevious();
2329
- oEvent.preventDefault();
2330
- }
2331
- };
2332
-
2333
2267
  // navigate to previous or next section according to current focus position
2334
2268
  ListBase.prototype._navToSection = function(bForward) {
2335
2269
  var $TargetSection;
@@ -2410,35 +2344,71 @@ function(
2410
2344
  }
2411
2345
  };
2412
2346
 
2413
- // Ctrl + A to switch select all/none
2414
2347
  ListBase.prototype.onkeydown = function(oEvent) {
2415
- var bCtrlA = (oEvent.which == KeyCodes.A) && (oEvent.metaKey || oEvent.ctrlKey);
2348
+ if (oEvent.isMarked()) {
2349
+ return;
2350
+ }
2416
2351
 
2417
- if (oEvent.isMarked() || !bCtrlA || !jQuery(oEvent.target).hasClass(this.sNavItemClass) ) {
2352
+ var $Target = jQuery(oEvent.target);
2353
+ var $FocusableItem = $Target.closest(".sapMLIBFocusable").next(".sapMListTblSubRow").addBack();
2354
+ if (!$FocusableItem[0]) {
2355
+ $FocusableItem = $Target.closest(".sapMListTblSubRow").prev(".sapMLIBFocusable").addBack();
2356
+ }
2357
+ if (!$FocusableItem[0]) {
2418
2358
  return;
2419
2359
  }
2420
- var sMultiSelectMode = this.getMultiSelectMode();
2421
- var bCtrlShiftA = bCtrlA && oEvent.shiftKey && sMultiSelectMode == MultiSelectMode.ClearAll;
2422
- if (bCtrlShiftA) {
2360
+
2361
+ var bItemEvent = $Target.hasClass("sapMLIBFocusable");
2362
+ var preventDefault = function() {
2423
2363
  oEvent.preventDefault();
2424
2364
  oEvent.setMarked();
2425
- this.removeSelections(false, true);
2426
- return;
2365
+ };
2366
+
2367
+ // Ctrl + (Shift) + A: select/deselect all
2368
+ if (oEvent.code == "KeyA" && (oEvent.metaKey || oEvent.ctrlKey) && bItemEvent && this.getMode() == ListMode.MultiSelect) {
2369
+ var bClearAll = (this.getMultiSelectMode() == MultiSelectMode.ClearAll);
2370
+ if (oEvent.shiftKey) {
2371
+ if (bClearAll) {
2372
+ this.removeSelections(false, true);
2373
+ }
2374
+ } else if (!bClearAll) {
2375
+ if (this.isAllSelectableSelected()) {
2376
+ this.removeSelections(false, true);
2377
+ } else {
2378
+ this.selectAll(true);
2379
+ }
2380
+ }
2381
+ return preventDefault();
2427
2382
  }
2428
2383
 
2429
- oEvent.preventDefault();
2384
+ // Enter / F2: focus from container to the content
2385
+ if ((oEvent.code == "Enter" || oEvent.code == "F2") && $Target.hasClass("sapMTblCellFocusable")) {
2386
+ $Target.find(":sapTabbable").first().trigger("focus");
2387
+ return preventDefault();
2388
+ }
2430
2389
 
2431
- if (this.getMode() !== ListMode.MultiSelect || sMultiSelectMode === MultiSelectMode.ClearAll) {
2432
- return;
2390
+ // F2 / F7: focus from item to the first interactive element
2391
+ if ((oEvent.code == "F2" && bItemEvent) || (oEvent.code == "F7" && bItemEvent && this._iFocusIndexOfItem == undefined)) {
2392
+ $FocusableItem.find(":sapTabbable").first().trigger("focus");
2393
+ return preventDefault();
2433
2394
  }
2434
2395
 
2435
- if (this.isAllSelectableSelected()) {
2436
- this.removeSelections(false, true);
2437
- } else {
2438
- this.selectAll(true);
2396
+ // F2: focus from editable content to the container
2397
+ if (oEvent.code == "F2" && !bItemEvent) {
2398
+ jQuery($Target.closest(".sapMTblCellFocusable")[0] || $FocusableItem[0]).trigger("focus");
2399
+ return preventDefault();
2439
2400
  }
2440
2401
 
2441
- oEvent.setMarked();
2402
+ // F7: switch focus between content and item
2403
+ if (oEvent.code == "F7") {
2404
+ if (bItemEvent) {
2405
+ $FocusableItem.find(":sapFocusable").eq(this._iFocusIndexOfItem).trigger("focus");
2406
+ } else {
2407
+ this._iFocusIndexOfItem = $FocusableItem.find(":sapFocusable").index($Target);
2408
+ $FocusableItem.eq(0).trigger("focus");
2409
+ }
2410
+ return preventDefault();
2411
+ }
2442
2412
  };
2443
2413
 
2444
2414
  ListBase.prototype.onmousedown = function(oEvent) {
@@ -2459,19 +2429,18 @@ function(
2459
2429
  return;
2460
2430
  }
2461
2431
 
2462
- // get the last focused element from the ItemNavigation
2432
+ // get the last focused element from the ItemNavigation and focus
2463
2433
  var aNavigationDomRefs = this._oItemNavigation.getItemDomRefs();
2464
2434
  var iLastFocusedIndex = this._oItemNavigation.getFocusedIndex();
2465
2435
  var $LastFocused = jQuery(aNavigationDomRefs[iLastFocusedIndex]);
2466
2436
 
2467
- // find related item control to get tabbables
2468
- var oRelatedControl = Element.closestTo($LastFocused[0]) || {};
2469
- var $Tabbables = oRelatedControl.getTabbables ? oRelatedControl.getTabbables() : $LastFocused.find(":sapTabbable");
2470
-
2471
- // get the last tabbable item or itself and focus
2472
- var $FocusElement = $Tabbables.eq(-1).add($LastFocused).eq(-1);
2473
2437
  this.bAnnounceDetails = true;
2474
- $FocusElement.trigger("focus");
2438
+ if (this.getKeyboardMode() == "Edit") {
2439
+ var $Tabbable = $LastFocused.find(":sapTabbable").first();
2440
+ $Tabbable[0] ? $Tabbable.trigger("focus") : $LastFocused.trigger("focus");
2441
+ } else {
2442
+ $LastFocused.trigger("focus");
2443
+ }
2475
2444
  };
2476
2445
 
2477
2446
  // Handles focus to reposition the focus to correct place
@@ -2497,12 +2466,25 @@ function(
2497
2466
  sDescription = ListItemBase.getAccessibilityText(vNoData);
2498
2467
  }
2499
2468
  this.updateInvisibleText(sDescription, oTarget);
2469
+ } else if (oTarget.id == this.getId("listUl") && this.getKeyboardMode() == "Edit") {
2470
+ this.focusPrevious();
2471
+ oEvent.stopImmediatePropagation(true);
2472
+ return;
2473
+ }
2474
+
2475
+ // update the focused index of item navigation when inner elements are focused
2476
+ if (this._oItemNavigation && !oTarget.matches(".sapMLIBFocusable,.sapMTblCellFocusable")) {
2477
+ var oFocusableItem = oTarget.closest(".sapMLIBFocusable,.sapMTblCellFocusable");
2478
+ if (oFocusableItem) {
2479
+ var iFocusableIndex = this._oItemNavigation.getItemDomRefs().indexOf(oFocusableItem);
2480
+ if (iFocusableIndex >= 0) {
2481
+ this._oItemNavigation.iFocusedIndex = (this.getKeyboardMode() == "Edit") ? iFocusableIndex : iFocusableIndex - iFocusableIndex % this._oItemNavigation.iColumns;
2482
+ }
2483
+ }
2500
2484
  }
2501
2485
 
2502
2486
  // handle only for backward navigation
2503
- if (oEvent.isMarked() || !this._oItemNavigation ||
2504
- this.getKeyboardMode() == ListKeyboardMode.Edit ||
2505
- oTarget.id != this.getId("after")) {
2487
+ if (oEvent.isMarked() || !this._oItemNavigation || oTarget.id != this.getId("after")) {
2506
2488
  return;
2507
2489
  }
2508
2490
 
@@ -2520,7 +2502,7 @@ function(
2520
2502
 
2521
2503
  // this gets called when items up arrow key is pressed for the edit keyboard mode
2522
2504
  ListBase.prototype.onItemArrowUpDown = function(oListItem, oEvent) {
2523
- if (this.getKeyboardMode() !== ListKeyboardMode.Edit || oEvent.target instanceof HTMLTextAreaElement) {
2505
+ if (oEvent.target instanceof HTMLTextAreaElement) {
2524
2506
  return;
2525
2507
  }
2526
2508
 
@@ -2947,27 +2929,6 @@ function(
2947
2929
  return "list";
2948
2930
  };
2949
2931
 
2950
- /**
2951
- * This method is a hook for the RenderManager that gets called
2952
- * during the rendering of child Controls. It allows to add,
2953
- * remove and update existing accessibility attributes (ARIA) of
2954
- * those controls.
2955
- *
2956
- * @param {sap.ui.core.Control} oElement - The Control that gets rendered by the RenderManager
2957
- * @param {object} mAriaProps - The mapping of "aria-" prefixed attributes
2958
- * @protected
2959
- */
2960
- ListBase.prototype.enhanceAccessibilityState = function(oElement, mAriaProps) {
2961
- if (!oElement.isA("sap.m.ListItemBase") || oElement.isGroupHeader()) {
2962
- return;
2963
- }
2964
-
2965
- // add aria-posinset & aria-setsize attributes to listitem DOM (not for group headers)
2966
- var mPosition = this.getAccessbilityPosition(oElement);
2967
- mAriaProps.posinset = mPosition.posInset;
2968
- mAriaProps.setsize = mPosition.setSize;
2969
- };
2970
-
2971
2932
  return ListBase;
2972
2933
 
2973
2934
  });
@@ -11,9 +11,6 @@ sap.ui.define(["sap/m/library", "sap/ui/core/library", "sap/ui/Device", "sap/ui/
11
11
  // shortcut for sap.m.ListGrowingDirection
12
12
  var ListGrowingDirection = library.ListGrowingDirection;
13
13
 
14
- // shortcut for sap.m.ListKeyboardMode
15
- var ListKeyboardMode = library.ListKeyboardMode;
16
-
17
14
  // shortcut for sap.m.ToolbarDesign
18
15
  var ToolbarDesign = library.ToolbarDesign;
19
16
 
@@ -129,7 +126,6 @@ sap.ui.define(["sap/m/library", "sap/ui/core/library", "sap/ui/Device", "sap/ui/
129
126
  var aItems = oControl.getItems(),
130
127
  bShowNoData = oControl.getShowNoData(),
131
128
  bRenderItems = oControl.shouldRenderItems() && aItems.length,
132
- iTabIndex = oControl.getKeyboardMode() == ListKeyboardMode.Edit ? -1 : 0,
133
129
  bUpwardGrowing = oControl.getGrowingDirection() == ListGrowingDirection.Upwards && oControl.getGrowing();
134
130
 
135
131
  // render top growing
@@ -138,7 +134,7 @@ sap.ui.define(["sap/m/library", "sap/ui/core/library", "sap/ui/Device", "sap/ui/
138
134
  }
139
135
 
140
136
  // dummy keyboard handling area
141
- this.renderDummyArea(rm, oControl, "before", -1);
137
+ this.renderDummyArea(rm, oControl, "before", "-1");
142
138
 
143
139
  // run hook method to start building list
144
140
  this.renderListStartAttributes(rm, oControl);
@@ -150,7 +146,7 @@ sap.ui.define(["sap/m/library", "sap/ui/core/library", "sap/ui/Device", "sap/ui/
150
146
  }
151
147
 
152
148
  if (bRenderItems || bShowNoData) {
153
- rm.attr("tabindex", iTabIndex);
149
+ rm.attr("tabindex", "0");
154
150
  }
155
151
 
156
152
  // separators
@@ -193,7 +189,7 @@ sap.ui.define(["sap/m/library", "sap/ui/core/library", "sap/ui/Device", "sap/ui/
193
189
  this.renderListEndAttributes(rm, oControl);
194
190
 
195
191
  // dummy keyboard handling area
196
- this.renderDummyArea(rm, oControl, "after", iTabIndex);
192
+ this.renderDummyArea(rm, oControl, "after", "0");
197
193
 
198
194
  // render bottom growing
199
195
  if (!bUpwardGrowing) {
@@ -297,7 +293,7 @@ sap.ui.define(["sap/m/library", "sap/ui/core/library", "sap/ui/Device", "sap/ui/
297
293
  var sRole = oControl.getAriaRole();
298
294
  return {
299
295
  role : sRole,
300
- multiselectable : (sRole === "listbox" && oControl._bSelectionMode) ? oControl.getMode() == "MultiSelect" : undefined,
296
+ multiselectable : (sRole != "list" && oControl._bSelectionMode) ? oControl.getMode() == "MultiSelect" : undefined,
301
297
  labelledby : {
302
298
  value : this.getAriaLabelledBy(oControl),
303
299
  append : true
@@ -327,7 +323,7 @@ sap.ui.define(["sap/m/library", "sap/ui/core/library", "sap/ui/Device", "sap/ui/
327
323
  */
328
324
  ListBaseRenderer.renderNoData = function(rm, oControl) {
329
325
  rm.openStart("li", oControl.getId("nodata"));
330
- rm.attr("tabindex", oControl.getKeyboardMode() == ListKeyboardMode.Navigation ? -1 : 0);
326
+ rm.attr("tabindex", "-1");
331
327
  var sAriaRole = this.getNoDataAriaRole(oControl);
332
328
  if (sAriaRole) {
333
329
  rm.attr("role", sAriaRole);