@openui5/sap.m 1.103.0 → 1.105.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 (475) hide show
  1. package/.eslintrc.json +2 -3
  2. package/.reuse/dep5 +18 -1
  3. package/LICENSES/LicenseRef-tzdata-PublicDomain.txt +5 -0
  4. package/THIRDPARTY.txt +36 -3
  5. package/package.json +4 -4
  6. package/src/sap/m/.library +1 -1
  7. package/src/sap/m/AccButton.js +1 -1
  8. package/src/sap/m/ActionListItem.js +1 -1
  9. package/src/sap/m/ActionSelect.js +1 -1
  10. package/src/sap/m/ActionSheet.js +1 -1
  11. package/src/sap/m/App.js +2 -3
  12. package/src/sap/m/AssociativeOverflowToolbar.js +1 -1
  13. package/src/sap/m/Avatar.js +2 -2
  14. package/src/sap/m/BadgeEnabler.js +1 -2
  15. package/src/sap/m/Bar.js +11 -10
  16. package/src/sap/m/Breadcrumbs.js +2 -2
  17. package/src/sap/m/BusyDialog.js +1 -1
  18. package/src/sap/m/BusyIndicator.js +1 -1
  19. package/src/sap/m/Button.js +49 -10
  20. package/src/sap/m/ButtonRenderer.js +10 -2
  21. package/src/sap/m/Carousel.js +3 -4
  22. package/src/sap/m/CarouselLayout.js +1 -1
  23. package/src/sap/m/CheckBox.js +46 -6
  24. package/src/sap/m/CheckBoxRenderer.js +1 -0
  25. package/src/sap/m/ColorPalette.js +1 -1
  26. package/src/sap/m/ColorPalettePopover.js +1 -1
  27. package/src/sap/m/Column.js +1 -1
  28. package/src/sap/m/ColumnHeaderPopover.js +5 -7
  29. package/src/sap/m/ColumnListItem.js +1 -4
  30. package/src/sap/m/ColumnListItemRenderer.js +1 -2
  31. package/src/sap/m/ColumnPopoverActionItem.js +3 -3
  32. package/src/sap/m/ColumnPopoverCustomItem.js +3 -3
  33. package/src/sap/m/ColumnPopoverItem.js +3 -3
  34. package/src/sap/m/ColumnPopoverSelectListItem.js +3 -5
  35. package/src/sap/m/ColumnPopoverSortItem.js +3 -3
  36. package/src/sap/m/ComboBox.js +6 -5
  37. package/src/sap/m/ComboBoxBase.js +1 -5
  38. package/src/sap/m/ComboBoxBaseRenderer.js +2 -2
  39. package/src/sap/m/ComboBoxTextField.js +1 -7
  40. package/src/sap/m/ComboBoxTextFieldRenderer.js +19 -4
  41. package/src/sap/m/CustomDynamicDateOption.js +1 -1
  42. package/src/sap/m/CustomListItem.js +1 -1
  43. package/src/sap/m/CustomTile.js +1 -1
  44. package/src/sap/m/CustomTreeItem.js +3 -3
  45. package/src/sap/m/CustomTreeItemRenderer.js +2 -2
  46. package/src/sap/m/DatePicker.js +14 -24
  47. package/src/sap/m/DateRangeSelection.js +45 -38
  48. package/src/sap/m/DateTimeField.js +87 -20
  49. package/src/sap/m/DateTimeInput.js +1 -1
  50. package/src/sap/m/DateTimePicker.js +52 -28
  51. package/src/sap/m/Dialog.js +38 -1
  52. package/src/sap/m/DisplayListItem.js +1 -1
  53. package/src/sap/m/DraftIndicator.js +1 -1
  54. package/src/sap/m/DynamicDate.js +1 -1
  55. package/src/sap/m/DynamicDateFormat.js +2 -5
  56. package/src/sap/m/DynamicDateOption.js +43 -16
  57. package/src/sap/m/DynamicDateRange.js +49 -7
  58. package/src/sap/m/DynamicDateRangeRenderer.js +5 -2
  59. package/src/sap/m/DynamicDateUtil.js +23 -2
  60. package/src/sap/m/DynamicDateValueHelpUIType.js +1 -1
  61. package/src/sap/m/ExpandableText.js +1 -1
  62. package/src/sap/m/FacetFilter.js +2 -2
  63. package/src/sap/m/FacetFilterItem.js +1 -1
  64. package/src/sap/m/FacetFilterList.js +4 -4
  65. package/src/sap/m/FeedContent.js +1 -1
  66. package/src/sap/m/FeedInput.js +1 -1
  67. package/src/sap/m/FeedListItem.js +1 -1
  68. package/src/sap/m/FeedListItemAction.js +1 -1
  69. package/src/sap/m/Fiori20Adapter.js +2 -2
  70. package/src/sap/m/FlexBox.js +1 -1
  71. package/src/sap/m/FlexItemData.js +1 -1
  72. package/src/sap/m/FormattedText.js +1 -1
  73. package/src/sap/m/GenericTag.js +1 -1
  74. package/src/sap/m/GenericTile.js +67 -16
  75. package/src/sap/m/GenericTileLineModeRenderer.js +4 -4
  76. package/src/sap/m/GenericTileRenderer.js +16 -4
  77. package/src/sap/m/GroupHeaderListItem.js +1 -1
  78. package/src/sap/m/GrowingEnablement.js +37 -11
  79. package/src/sap/m/GrowingList.js +1 -1
  80. package/src/sap/m/HBox.js +1 -1
  81. package/src/sap/m/HeaderContainer.js +3 -3
  82. package/src/sap/m/HeaderContainerItemNavigator.js +3 -6
  83. package/src/sap/m/IconTabBar.js +54 -22
  84. package/src/sap/m/IconTabBarSelectList.js +1 -1
  85. package/src/sap/m/IconTabFilter.js +1 -1
  86. package/src/sap/m/IconTabFilterExpandButtonBadge.js +1 -1
  87. package/src/sap/m/IconTabHeader.js +5 -1
  88. package/src/sap/m/IconTabSeparator.js +1 -1
  89. package/src/sap/m/IllustratedMessage.js +64 -25
  90. package/src/sap/m/IllustratedMessageRenderer.js +10 -6
  91. package/src/sap/m/Illustration.js +1 -1
  92. package/src/sap/m/IllustrationPool.js +1 -0
  93. package/src/sap/m/IllustrationRenderer.js +1 -1
  94. package/src/sap/m/Image.js +2 -2
  95. package/src/sap/m/ImageContent.js +1 -1
  96. package/src/sap/m/Input.js +51 -7
  97. package/src/sap/m/InputBase.js +1 -1
  98. package/src/sap/m/InputBaseRenderer.js +2 -2
  99. package/src/sap/m/InputListItem.js +1 -1
  100. package/src/sap/m/InputRenderer.js +4 -0
  101. package/src/sap/m/Label.js +34 -4
  102. package/src/sap/m/LabelRenderer.js +7 -2
  103. package/src/sap/m/LightBox.js +1 -1
  104. package/src/sap/m/LightBoxItem.js +1 -1
  105. package/src/sap/m/Link.js +95 -10
  106. package/src/sap/m/LinkRenderer.js +26 -12
  107. package/src/sap/m/List.js +38 -1
  108. package/src/sap/m/ListBase.js +104 -40
  109. package/src/sap/m/ListBaseRenderer.js +7 -15
  110. package/src/sap/m/ListItemBase.js +40 -11
  111. package/src/sap/m/ListItemBaseRenderer.js +17 -6
  112. package/src/sap/m/ListRenderer.js +2 -2
  113. package/src/sap/m/MaskEnabler.js +52 -2
  114. package/src/sap/m/MaskInput.js +23 -1
  115. package/src/sap/m/MaskInputRule.js +1 -1
  116. package/src/sap/m/Menu.js +1 -1
  117. package/src/sap/m/MenuButton.js +1 -1
  118. package/src/sap/m/MenuItem.js +1 -1
  119. package/src/sap/m/MenuListItem.js +1 -1
  120. package/src/sap/m/MessageBox.js +1 -1
  121. package/src/sap/m/MessageItem.js +3 -4
  122. package/src/sap/m/MessageListItem.js +8 -4
  123. package/src/sap/m/MessagePage.js +1 -1
  124. package/src/sap/m/MessagePopover.js +4 -1
  125. package/src/sap/m/MessagePopoverItem.js +1 -1
  126. package/src/sap/m/MessageStrip.js +1 -1
  127. package/src/sap/m/MessageToast.js +1 -1
  128. package/src/sap/m/MessageView.js +1 -1
  129. package/src/sap/m/MultiComboBox.js +5 -16
  130. package/src/sap/m/MultiEditField.js +1 -1
  131. package/src/sap/m/MultiInput.js +1 -15
  132. package/src/sap/m/NavContainer.js +21 -19
  133. package/src/sap/m/NewsContent.js +2 -3
  134. package/src/sap/m/NotificationList.js +1 -1
  135. package/src/sap/m/NotificationListBase.js +1 -1
  136. package/src/sap/m/NotificationListGroup.js +3 -7
  137. package/src/sap/m/NotificationListGroupRenderer.js +1 -1
  138. package/src/sap/m/NotificationListItem.js +1 -1
  139. package/src/sap/m/NumericContent.js +1 -1
  140. package/src/sap/m/NumericInput.js +1 -1
  141. package/src/sap/m/ObjectAttribute.js +1 -1
  142. package/src/sap/m/ObjectHeader.js +3 -3
  143. package/src/sap/m/ObjectIdentifier.js +3 -3
  144. package/src/sap/m/ObjectListItem.js +7 -1
  145. package/src/sap/m/ObjectMarker.js +1 -1
  146. package/src/sap/m/ObjectNumber.js +2 -3
  147. package/src/sap/m/ObjectNumberRenderer.js +10 -3
  148. package/src/sap/m/ObjectStatus.js +2 -3
  149. package/src/sap/m/ObjectStatusRenderer.js +2 -2
  150. package/src/sap/m/OverflowToolbar.js +3 -8
  151. package/src/sap/m/OverflowToolbarAssociativePopover.js +1 -1
  152. package/src/sap/m/OverflowToolbarAssociativePopoverControls.js +3 -3
  153. package/src/sap/m/OverflowToolbarAssociativePopoverRenderer.js +2 -2
  154. package/src/sap/m/OverflowToolbarButton.js +1 -1
  155. package/src/sap/m/OverflowToolbarLayoutData.js +1 -1
  156. package/src/sap/m/OverflowToolbarToggleButton.js +1 -1
  157. package/src/sap/m/P13nAnyFilterItem.js +3 -3
  158. package/src/sap/m/P13nColumnsItem.js +3 -3
  159. package/src/sap/m/P13nColumnsPanel.js +3 -3
  160. package/src/sap/m/P13nConditionPanel.js +10 -3
  161. package/src/sap/m/P13nDialog.js +3 -3
  162. package/src/sap/m/P13nDimMeasureItem.js +3 -3
  163. package/src/sap/m/P13nDimMeasurePanel.js +3 -3
  164. package/src/sap/m/P13nFilterItem.js +3 -3
  165. package/src/sap/m/P13nFilterPanel.js +3 -3
  166. package/src/sap/m/P13nGroupItem.js +3 -3
  167. package/src/sap/m/P13nGroupPanel.js +3 -3
  168. package/src/sap/m/P13nItem.js +3 -3
  169. package/src/sap/m/P13nOperationsHelper.js +2 -2
  170. package/src/sap/m/P13nPanel.js +3 -3
  171. package/src/sap/m/P13nSelectionItem.js +3 -3
  172. package/src/sap/m/P13nSelectionPanel.js +3 -3
  173. package/src/sap/m/P13nSortItem.js +3 -3
  174. package/src/sap/m/P13nSortPanel.js +3 -3
  175. package/src/sap/m/PDFViewer.js +2 -2
  176. package/src/sap/m/PDFViewerRenderer.js +1 -0
  177. package/src/sap/m/Page.js +1 -3
  178. package/src/sap/m/PageAccessibleLandmarkInfo.js +1 -1
  179. package/src/sap/m/PagingButton.js +1 -1
  180. package/src/sap/m/Panel.js +1 -1
  181. package/src/sap/m/PlanningCalendar.js +4 -16
  182. package/src/sap/m/PlanningCalendarHeader.js +1 -5
  183. package/src/sap/m/PlanningCalendarLegend.js +1 -1
  184. package/src/sap/m/PlanningCalendarRow.js +1 -1
  185. package/src/sap/m/PlanningCalendarView.js +1 -1
  186. package/src/sap/m/Popover.js +11 -4
  187. package/src/sap/m/ProgressIndicator.js +1 -1
  188. package/src/sap/m/ProgressIndicatorRenderer.js +6 -3
  189. package/src/sap/m/PullToRefresh.js +1 -1
  190. package/src/sap/m/QuickView.js +3 -3
  191. package/src/sap/m/QuickViewBase.js +3 -3
  192. package/src/sap/m/QuickViewCard.js +3 -3
  193. package/src/sap/m/QuickViewGroup.js +1 -1
  194. package/src/sap/m/QuickViewGroupElement.js +3 -3
  195. package/src/sap/m/QuickViewPage.js +3 -3
  196. package/src/sap/m/RadioButton.js +47 -20
  197. package/src/sap/m/RadioButtonGroup.js +29 -19
  198. package/src/sap/m/RangeSlider.js +1 -3
  199. package/src/sap/m/RatingIndicator.js +8 -1
  200. package/src/sap/m/RatingIndicatorRenderer.js +13 -4
  201. package/src/sap/m/ResponsivePopover.js +3 -3
  202. package/src/sap/m/ResponsiveScale.js +1 -1
  203. package/src/sap/m/ScrollBar.js +1 -1
  204. package/src/sap/m/ScrollContainer.js +1 -1
  205. package/src/sap/m/SearchField.js +1 -1
  206. package/src/sap/m/SegmentedButton.js +1 -1
  207. package/src/sap/m/SegmentedButtonItem.js +1 -1
  208. package/src/sap/m/Select.js +7 -13
  209. package/src/sap/m/SelectDialog.js +2 -1
  210. package/src/sap/m/SelectDialogBase.js +1 -1
  211. package/src/sap/m/SelectList.js +1 -1
  212. package/src/sap/m/SelectListRenderer.js +2 -2
  213. package/src/sap/m/SelectionDetails.js +2 -2
  214. package/src/sap/m/SelectionDetailsFacade.js +2 -2
  215. package/src/sap/m/SelectionDetailsItem.js +1 -1
  216. package/src/sap/m/SelectionDetailsItemLine.js +1 -1
  217. package/src/sap/m/Shell.js +1 -1
  218. package/src/sap/m/SimpleFixFlex.js +1 -1
  219. package/src/sap/m/SinglePlanningCalendar.js +5 -7
  220. package/src/sap/m/SinglePlanningCalendarDayView.js +1 -1
  221. package/src/sap/m/SinglePlanningCalendarGrid.js +1 -7
  222. package/src/sap/m/SinglePlanningCalendarMonthGrid.js +1 -1
  223. package/src/sap/m/SinglePlanningCalendarMonthGridRenderer.js +0 -2
  224. package/src/sap/m/SinglePlanningCalendarMonthView.js +1 -1
  225. package/src/sap/m/SinglePlanningCalendarView.js +1 -1
  226. package/src/sap/m/SinglePlanningCalendarWeekView.js +1 -1
  227. package/src/sap/m/SinglePlanningCalendarWorkWeekView.js +1 -1
  228. package/src/sap/m/SlideTile.js +30 -5
  229. package/src/sap/m/Slider.js +1 -1
  230. package/src/sap/m/SliderTooltip.js +1 -3
  231. package/src/sap/m/SliderTooltipBase.js +1 -1
  232. package/src/sap/m/SliderTooltipBaseRenderer.js +2 -2
  233. package/src/sap/m/SliderTooltipContainer.js +1 -1
  234. package/src/sap/m/SliderTooltipContainerRenderer.js +2 -2
  235. package/src/sap/m/SliderTooltipRenderer.js +2 -2
  236. package/src/sap/m/SplitApp.js +1 -1
  237. package/src/sap/m/SplitButton.js +1 -3
  238. package/src/sap/m/SplitContainer.js +1 -5
  239. package/src/sap/m/StandardDynamicDateOption.js +9 -15
  240. package/src/sap/m/StandardListItem.js +1 -1
  241. package/src/sap/m/StandardListItemRenderer.js +2 -2
  242. package/src/sap/m/StandardTile.js +1 -1
  243. package/src/sap/m/StandardTreeItem.js +1 -1
  244. package/src/sap/m/StepInput.js +1 -1
  245. package/src/sap/m/SuggestionItem.js +1 -1
  246. package/src/sap/m/SuggestionsPopover.js +4 -2
  247. package/src/sap/m/Switch.js +1 -1
  248. package/src/sap/m/TabContainer.js +1 -1
  249. package/src/sap/m/TabContainerItem.js +1 -1
  250. package/src/sap/m/TabStrip.js +1 -1
  251. package/src/sap/m/TabStripItem.js +1 -1
  252. package/src/sap/m/Table.js +11 -9
  253. package/src/sap/m/TablePersoController.js +1 -1
  254. package/src/sap/m/TablePersoDialog.js +6 -15
  255. package/src/sap/m/TablePersoProvider.js +1 -1
  256. package/src/sap/m/TableRenderer.js +2 -9
  257. package/src/sap/m/TableSelectDialog.js +1 -1
  258. package/src/sap/m/Text.js +1 -1
  259. package/src/sap/m/TextArea.js +1 -1
  260. package/src/sap/m/TextAreaRenderer.js +1 -2
  261. package/src/sap/m/Tile.js +1 -1
  262. package/src/sap/m/TileContainer.js +1 -1
  263. package/src/sap/m/TileContent.js +8 -9
  264. package/src/sap/m/TileContentRenderer.js +3 -3
  265. package/src/sap/m/TimePicker.js +43 -6
  266. package/src/sap/m/TimePickerClock.js +2 -3
  267. package/src/sap/m/TimePickerClocks.js +5 -3
  268. package/src/sap/m/TimePickerClocksRenderer.js +1 -1
  269. package/src/sap/m/TimePickerInputs.js +1 -1
  270. package/src/sap/m/TimePickerInputsRenderer.js +1 -1
  271. package/src/sap/m/TimePickerInternals.js +1 -1
  272. package/src/sap/m/TimePickerSlider.js +1 -1
  273. package/src/sap/m/TimePickerSliders.js +3 -5
  274. package/src/sap/m/Title.js +1 -1
  275. package/src/sap/m/TitlePropagationSupport.js +1 -1
  276. package/src/sap/m/ToggleButton.js +2 -2
  277. package/src/sap/m/Token.js +1 -3
  278. package/src/sap/m/Tokenizer.js +1 -1
  279. package/src/sap/m/Toolbar.js +1 -1
  280. package/src/sap/m/ToolbarLayoutData.js +1 -1
  281. package/src/sap/m/ToolbarSeparator.js +1 -1
  282. package/src/sap/m/ToolbarSpacer.js +1 -1
  283. package/src/sap/m/Tree.js +8 -1
  284. package/src/sap/m/TreeItemBase.js +1 -1
  285. package/src/sap/m/TreeRenderer.js +0 -10
  286. package/src/sap/m/UploadCollection.js +2 -2
  287. package/src/sap/m/UploadCollectionItem.js +1 -1
  288. package/src/sap/m/UploadCollectionParameter.js +1 -1
  289. package/src/sap/m/UploadCollectionToolbarPlaceholder.js +1 -1
  290. package/src/sap/m/VBox.js +1 -1
  291. package/src/sap/m/ValueStateHeader.js +1 -1
  292. package/src/sap/m/VariantItem.js +160 -0
  293. package/src/sap/m/VariantManagement.js +665 -570
  294. package/src/sap/m/ViewSettingsCustomItem.js +1 -1
  295. package/src/sap/m/ViewSettingsCustomTab.js +1 -1
  296. package/src/sap/m/ViewSettingsDialog.js +1 -1
  297. package/src/sap/m/ViewSettingsFilterItem.js +1 -1
  298. package/src/sap/m/ViewSettingsItem.js +1 -1
  299. package/src/sap/m/VisibleItem.js +1 -1
  300. package/src/sap/m/WheelSlider.js +1 -1
  301. package/src/sap/m/WheelSliderContainer.js +1 -1
  302. package/src/sap/m/Wizard.js +1 -3
  303. package/src/sap/m/WizardProgressNavigator.js +1 -1
  304. package/src/sap/m/WizardStep.js +1 -1
  305. package/src/sap/m/changeHandler/AddTableColumn.js +12 -13
  306. package/src/sap/m/changeHandler/ChangeLinkTarget.js +2 -3
  307. package/src/sap/m/changeHandler/CombineButtons.js +19 -22
  308. package/src/sap/m/changeHandler/MoveTableColumns.js +6 -6
  309. package/src/sap/m/changeHandler/SelectIconTabBarFilter.js +5 -5
  310. package/src/sap/m/changeHandler/SplitMenuButton.js +7 -6
  311. package/src/sap/m/delegate/DateNavigation.js +0 -4
  312. package/src/sap/m/designtime/Link.designtime.js +19 -11
  313. package/src/sap/m/designtime/VariantManagement.designtime.js +36 -26
  314. package/src/sap/m/flexibility/EngineFlex.js +48 -0
  315. package/src/sap/m/inputUtils/selectionRange.js +1 -2
  316. package/src/sap/m/library.js +30 -6
  317. package/src/sap/m/messagebundle.properties +30 -3
  318. package/src/sap/m/messagebundle_ar.properties +26 -8
  319. package/src/sap/m/messagebundle_bg.properties +20 -2
  320. package/src/sap/m/messagebundle_ca.properties +19 -1
  321. package/src/sap/m/messagebundle_cs.properties +20 -2
  322. package/src/sap/m/messagebundle_cy.properties +21 -3
  323. package/src/sap/m/messagebundle_da.properties +19 -1
  324. package/src/sap/m/messagebundle_de.properties +19 -1
  325. package/src/sap/m/messagebundle_el.properties +22 -4
  326. package/src/sap/m/messagebundle_en.properties +21 -3
  327. package/src/sap/m/messagebundle_en_GB.properties +21 -3
  328. package/src/sap/m/messagebundle_en_US_sappsd.properties +20 -2
  329. package/src/sap/m/messagebundle_en_US_saprigi.properties +18 -2
  330. package/src/sap/m/messagebundle_en_US_saptrc.properties +20 -2
  331. package/src/sap/m/messagebundle_es.properties +20 -2
  332. package/src/sap/m/messagebundle_es_MX.properties +19 -1
  333. package/src/sap/m/messagebundle_et.properties +19 -1
  334. package/src/sap/m/messagebundle_fi.properties +23 -5
  335. package/src/sap/m/messagebundle_fr.properties +20 -2
  336. package/src/sap/m/messagebundle_fr_CA.properties +21 -3
  337. package/src/sap/m/messagebundle_hi.properties +21 -3
  338. package/src/sap/m/messagebundle_hr.properties +23 -5
  339. package/src/sap/m/messagebundle_hu.properties +21 -3
  340. package/src/sap/m/messagebundle_id.properties +21 -3
  341. package/src/sap/m/messagebundle_it.properties +20 -2
  342. package/src/sap/m/messagebundle_iw.properties +21 -3
  343. package/src/sap/m/messagebundle_ja.properties +20 -2
  344. package/src/sap/m/messagebundle_kk.properties +19 -1
  345. package/src/sap/m/messagebundle_ko.properties +27 -9
  346. package/src/sap/m/messagebundle_lt.properties +19 -1
  347. package/src/sap/m/messagebundle_lv.properties +19 -1
  348. package/src/sap/m/messagebundle_ms.properties +20 -2
  349. package/src/sap/m/messagebundle_nl.properties +33 -15
  350. package/src/sap/m/messagebundle_no.properties +21 -3
  351. package/src/sap/m/messagebundle_pl.properties +20 -2
  352. package/src/sap/m/messagebundle_pt.properties +24 -6
  353. package/src/sap/m/messagebundle_pt_PT.properties +19 -1
  354. package/src/sap/m/messagebundle_ro.properties +20 -2
  355. package/src/sap/m/messagebundle_ru.properties +20 -2
  356. package/src/sap/m/messagebundle_sh.properties +20 -2
  357. package/src/sap/m/messagebundle_sk.properties +19 -1
  358. package/src/sap/m/messagebundle_sl.properties +20 -2
  359. package/src/sap/m/messagebundle_sv.properties +19 -1
  360. package/src/sap/m/messagebundle_th.properties +52 -34
  361. package/src/sap/m/messagebundle_tr.properties +23 -5
  362. package/src/sap/m/messagebundle_uk.properties +20 -2
  363. package/src/sap/m/messagebundle_vi.properties +20 -2
  364. package/src/sap/m/messagebundle_zh_CN.properties +20 -2
  365. package/src/sap/m/messagebundle_zh_TW.properties +19 -1
  366. package/src/sap/m/p13n/AbstractContainer.js +7 -7
  367. package/src/sap/m/p13n/AbstractContainerItem.js +4 -4
  368. package/src/sap/m/p13n/BasePanel.js +8 -7
  369. package/src/sap/m/p13n/Container.js +3 -3
  370. package/src/sap/m/p13n/Engine.js +1254 -0
  371. package/src/sap/m/p13n/FlexUtil.js +161 -0
  372. package/src/sap/m/p13n/GroupController.js +145 -0
  373. package/src/sap/m/p13n/GroupPanel.js +12 -5
  374. package/src/sap/m/p13n/MetadataHelper.js +35 -0
  375. package/src/sap/m/p13n/PersistenceProvider.js +160 -0
  376. package/src/sap/m/p13n/Popup.js +49 -12
  377. package/src/sap/m/p13n/QueryPanel.js +3 -3
  378. package/src/sap/m/p13n/SelectionController.js +548 -0
  379. package/src/sap/m/p13n/SelectionPanel.js +15 -3
  380. package/src/sap/m/p13n/SortController.js +153 -0
  381. package/src/sap/m/p13n/SortPanel.js +13 -3
  382. package/src/sap/m/p13n/enum/PersistenceMode.js +43 -0
  383. package/src/sap/m/p13n/handler/xConfigHandler.js +166 -0
  384. package/src/sap/m/p13n/modification/FlexModificationHandler.js +90 -0
  385. package/src/sap/m/p13n/modification/LocalStorageModificationHandler.js +75 -0
  386. package/src/sap/m/p13n/modification/ModificationHandler.js +143 -0
  387. package/src/sap/m/p13n/modules/AdaptationProvider.js +67 -0
  388. package/src/sap/m/p13n/modules/DefaultProviderRegistry.js +147 -0
  389. package/src/sap/m/p13n/modules/StateHandlerRegistry.js +101 -0
  390. package/src/sap/m/p13n/modules/UIManager.js +230 -0
  391. package/src/sap/m/p13n/modules/xConfigAPI.js +288 -0
  392. package/src/sap/m/plugins/CellSelector.js +741 -0
  393. package/src/sap/m/plugins/ColumnResizer.js +15 -1
  394. package/src/sap/m/plugins/DataStateIndicator.js +2 -2
  395. package/src/sap/m/plugins/PasteProvider.js +1 -1
  396. package/src/sap/m/plugins/PluginBase.js +4 -3
  397. package/src/sap/m/semantic/AddAction.js +1 -1
  398. package/src/sap/m/semantic/CancelAction.js +1 -1
  399. package/src/sap/m/semantic/DeleteAction.js +1 -1
  400. package/src/sap/m/semantic/DetailPage.js +1 -1
  401. package/src/sap/m/semantic/DiscussInJamAction.js +1 -1
  402. package/src/sap/m/semantic/EditAction.js +1 -1
  403. package/src/sap/m/semantic/FavoriteAction.js +1 -1
  404. package/src/sap/m/semantic/FilterAction.js +1 -1
  405. package/src/sap/m/semantic/FilterSelect.js +1 -1
  406. package/src/sap/m/semantic/FlagAction.js +1 -1
  407. package/src/sap/m/semantic/ForwardAction.js +1 -1
  408. package/src/sap/m/semantic/FullscreenPage.js +1 -1
  409. package/src/sap/m/semantic/GroupAction.js +1 -1
  410. package/src/sap/m/semantic/GroupSelect.js +1 -1
  411. package/src/sap/m/semantic/MainAction.js +1 -1
  412. package/src/sap/m/semantic/MasterPage.js +1 -1
  413. package/src/sap/m/semantic/MessagesIndicator.js +1 -1
  414. package/src/sap/m/semantic/MultiSelectAction.js +1 -1
  415. package/src/sap/m/semantic/NegativeAction.js +1 -1
  416. package/src/sap/m/semantic/OpenInAction.js +1 -1
  417. package/src/sap/m/semantic/PositiveAction.js +1 -1
  418. package/src/sap/m/semantic/PrintAction.js +1 -1
  419. package/src/sap/m/semantic/SaveAction.js +1 -1
  420. package/src/sap/m/semantic/Segment.js +1 -1
  421. package/src/sap/m/semantic/SegmentedContainer.js +1 -1
  422. package/src/sap/m/semantic/SemanticButton.js +1 -1
  423. package/src/sap/m/semantic/SemanticConfiguration.js +3 -4
  424. package/src/sap/m/semantic/SemanticControl.js +1 -1
  425. package/src/sap/m/semantic/SemanticOverflowToolbarButton.js +1 -1
  426. package/src/sap/m/semantic/SemanticOverflowToolbarToggleButton.js +1 -1
  427. package/src/sap/m/semantic/SemanticPage.js +1 -1
  428. package/src/sap/m/semantic/SemanticSelect.js +1 -1
  429. package/src/sap/m/semantic/SemanticToggleButton.js +1 -3
  430. package/src/sap/m/semantic/SendEmailAction.js +1 -1
  431. package/src/sap/m/semantic/SendMessageAction.js +1 -1
  432. package/src/sap/m/semantic/ShareInJamAction.js +1 -1
  433. package/src/sap/m/semantic/ShareMenu.js +1 -1
  434. package/src/sap/m/semantic/ShareMenuPage.js +1 -1
  435. package/src/sap/m/semantic/SortAction.js +1 -1
  436. package/src/sap/m/semantic/SortSelect.js +1 -1
  437. package/src/sap/m/table/Util.js +14 -7
  438. package/src/sap/m/table/columnmenu/ActionItem.js +1 -1
  439. package/src/sap/m/table/columnmenu/Entry.js +1 -1
  440. package/src/sap/m/table/columnmenu/Item.js +1 -1
  441. package/src/sap/m/table/columnmenu/ItemBase.js +1 -1
  442. package/src/sap/m/table/columnmenu/Menu.js +8 -2
  443. package/src/sap/m/table/columnmenu/QuickAction.js +1 -1
  444. package/src/sap/m/table/columnmenu/QuickActionBase.js +1 -1
  445. package/src/sap/m/table/columnmenu/QuickActionItem.js +1 -1
  446. package/src/sap/m/table/columnmenu/QuickGroup.js +21 -3
  447. package/src/sap/m/table/columnmenu/QuickGroupItem.js +13 -1
  448. package/src/sap/m/table/columnmenu/QuickSort.js +1 -3
  449. package/src/sap/m/table/columnmenu/QuickSortItem.js +1 -3
  450. package/src/sap/m/table/columnmenu/QuickTotal.js +21 -3
  451. package/src/sap/m/table/columnmenu/QuickTotalItem.js +13 -1
  452. package/src/sap/m/themes/base/Breadcrumbs.less +6 -0
  453. package/src/sap/m/themes/base/Button.less +0 -1
  454. package/src/sap/m/themes/base/CellSelector.less +9 -0
  455. package/src/sap/m/themes/base/CheckBox.less +1 -0
  456. package/src/sap/m/themes/base/Dialog.less +1 -0
  457. package/src/sap/m/themes/base/DynamicDateRange.less +4 -0
  458. package/src/sap/m/themes/base/FeedContent.less +13 -5
  459. package/src/sap/m/themes/base/GenericTile.less +49 -9
  460. package/src/sap/m/themes/base/IllustratedMessage.less +7 -0
  461. package/src/sap/m/themes/base/NewsContent.less +6 -0
  462. package/src/sap/m/themes/base/NumericContent.less +1 -1
  463. package/src/sap/m/themes/base/ObjectStatus.less +2 -1
  464. package/src/sap/m/themes/base/OverflowToolbarAssociativePopover.less +5 -1
  465. package/src/sap/m/themes/base/SelectList.less +0 -5
  466. package/src/sap/m/themes/base/SinglePlanningCalendarGrid.less +7 -0
  467. package/src/sap/m/themes/base/SlideTile.less +35 -4
  468. package/src/sap/m/themes/base/Table.less +11 -2
  469. package/src/sap/m/themes/base/TileContent.less +17 -0
  470. package/src/sap/m/themes/base/library.source.less +1 -0
  471. package/src/sap/m/upload/UploadSet.js +110 -21
  472. package/src/sap/m/upload/UploadSetItem.js +18 -7
  473. package/src/sap/m/upload/UploadSetRenderer.js +8 -16
  474. package/src/sap/m/upload/UploadSetToolbarPlaceholder.js +1 -1
  475. package/src/sap/m/upload/Uploader.js +1 -2
@@ -82,7 +82,7 @@ sap.ui.define([
82
82
  * @extends sap.ui.core.Control
83
83
  *
84
84
  * @author SAP SE
85
- * @version 1.103.0
85
+ * @version 1.105.0
86
86
  *
87
87
  * @constructor
88
88
  * @public
@@ -115,6 +115,14 @@ sap.ui.define([
115
115
  */
116
116
  enableFormattedText: { type: "boolean", group: "Appearance", defaultValue: false },
117
117
 
118
+ /**
119
+ * Defines whether the <code>IllustratedMessage</code> would resize itself according to it's height
120
+ * if <code>illustrationSize</code> property is set to <code>IllustratedMessageSize.Auto</code>.
121
+ *
122
+ * @since 1.104
123
+ */
124
+ enableVerticalResponsiveness: { type: "boolean", group: "Appearance", defaultValue: false },
125
+
118
126
  /**
119
127
  * Determines which illustration breakpoint variant is used.
120
128
  *
@@ -258,6 +266,12 @@ sap.ui.define([
258
266
  BASE: 259
259
267
  };
260
268
 
269
+ IllustratedMessage.BREAK_POINTS_HEIGHT = {
270
+ DIALOG: 451,
271
+ SPOT: 296,
272
+ BASE: 154
273
+ };
274
+
261
275
  IllustratedMessage.MEDIA = {
262
276
  BASE: "sapMIllustratedMessage-Base",
263
277
  SPOT: "sapMIllustratedMessage-Spot",
@@ -274,6 +288,7 @@ sap.ui.define([
274
288
  */
275
289
 
276
290
  IllustratedMessage.prototype.init = function () {
291
+ this._sLastKnownMedia = null;
277
292
  this._updateInternalIllustrationSetAndType(this.getIllustrationType());
278
293
  };
279
294
 
@@ -452,7 +467,7 @@ sap.ui.define([
452
467
  /**
453
468
  * Helper function which ensures that there is non-breaking space between the last two words
454
469
  * of a given DOM content. By adding it, we prevent one word (widow) on the last row of a text node.
455
- * @param {DOMRef} oDomRef - the DOM object which will be checked against
470
+ * @param {HTMLElement} oDomRef - the DOM object which will be checked against
456
471
  * @private
457
472
  */
458
473
  IllustratedMessage.prototype._preventWidowWords = function(oDomRef) {
@@ -477,14 +492,16 @@ sap.ui.define([
477
492
  */
478
493
  IllustratedMessage.prototype._updateDomSize = function () {
479
494
  var oDomRef = this.getDomRef(),
480
- sSize;
495
+ sSize, sCustomSize;
481
496
 
482
497
  if (oDomRef) {
483
498
  sSize = this.getIllustrationSize();
484
499
  if (sSize === IllustratedMessageSize.Auto) {
485
- this._updateMedia(oDomRef.getBoundingClientRect().width);
500
+ this._updateMedia(oDomRef.getBoundingClientRect().width, oDomRef.getBoundingClientRect().height);
486
501
  } else {
487
- this._updateMediaStyle(IllustratedMessage.MEDIA[sSize.toUpperCase()]);
502
+ sCustomSize = IllustratedMessage.MEDIA[sSize.toUpperCase()];
503
+ this._updateMediaStyle(sCustomSize);
504
+ this._updateSymbol(sCustomSize);
488
505
  }
489
506
  }
490
507
 
@@ -507,50 +524,72 @@ sap.ui.define([
507
524
  * @private
508
525
  */
509
526
  IllustratedMessage.prototype._onResize = function (oEvent) {
510
- var iCurrentWidth = oEvent.size.width;
527
+ var iCurrentWidth = oEvent.size.width,
528
+ iCurrentHeight = oEvent.size.height;
511
529
 
512
- this._updateMedia(iCurrentWidth);
530
+ this._updateMedia(iCurrentWidth, iCurrentHeight);
513
531
  };
514
532
 
515
533
  /**
516
- * Updates the media size of the control based on its own width, not on the entire screen size (which media query does).
534
+ * Updates the media size of the control based on its own width and height, not on the entire screen size (which media query does).
517
535
  * @param {number} iWidth - the actual width of the control
536
+ * @param {number} iHeight - the actual height of the control
518
537
  * @private
519
538
  */
520
- IllustratedMessage.prototype._updateMedia = function (iWidth) {
521
- if (!iWidth) {
539
+ IllustratedMessage.prototype._updateMedia = function (iWidth, iHeight) {
540
+ var bVertical = this.getEnableVerticalResponsiveness(),
541
+ sNewMedia;
542
+
543
+ if (!iWidth && !iHeight) {
522
544
  return;
523
545
  }
524
546
 
525
- if (iWidth <= IllustratedMessage.BREAK_POINTS.BASE) {
526
- this._updateMediaStyle(IllustratedMessage.MEDIA.BASE);
527
- } else if (iWidth <= IllustratedMessage.BREAK_POINTS.SPOT) {
528
- this._updateMediaStyle(IllustratedMessage.MEDIA.SPOT);
529
- } else if (iWidth <= IllustratedMessage.BREAK_POINTS.DIALOG) {
530
- this._updateMediaStyle(IllustratedMessage.MEDIA.DIALOG);
547
+ if (iWidth <= IllustratedMessage.BREAK_POINTS.BASE || (iHeight <= IllustratedMessage.BREAK_POINTS_HEIGHT.BASE && bVertical)) {
548
+ sNewMedia = IllustratedMessage.MEDIA.BASE;
549
+ } else if (iWidth <= IllustratedMessage.BREAK_POINTS.SPOT || (iHeight <= IllustratedMessage.BREAK_POINTS_HEIGHT.SPOT && bVertical)) {
550
+ sNewMedia = IllustratedMessage.MEDIA.SPOT;
551
+ } else if (iWidth <= IllustratedMessage.BREAK_POINTS.DIALOG || (iHeight <= IllustratedMessage.BREAK_POINTS_HEIGHT.DIALOG && bVertical)) {
552
+ sNewMedia = IllustratedMessage.MEDIA.DIALOG;
531
553
  } else {
532
- this._updateMediaStyle(IllustratedMessage.MEDIA.SCENE);
554
+ sNewMedia = IllustratedMessage.MEDIA.SCENE;
533
555
  }
556
+
557
+ this._updateMediaStyle(sNewMedia);
558
+ this._updateSymbol(sNewMedia);
534
559
  };
535
560
 
536
561
  /**
537
- * It puts the appropriate classes on the control and updates illustration's symbol based on the current media size.
562
+ * It puts the appropriate classes on the control based on the current media size.
538
563
  * @param {string} sCurrentMedia
539
564
  * @private
540
565
  */
541
566
  IllustratedMessage.prototype._updateMediaStyle = function (sCurrentMedia) {
567
+ if (this._sLastKnownMedia !== sCurrentMedia) {
568
+ this._sLastKnownMedia = sCurrentMedia;
569
+ } else {
570
+ return; // No need to iterate over the media classes if the media is the same as the one previously used
571
+ }
542
572
  Object.keys(IllustratedMessage.MEDIA).forEach(function (sMedia) {
543
- var bEnable = sCurrentMedia === IllustratedMessage.MEDIA[sMedia],
544
- sIdMedia = sMedia.charAt(0) + sMedia.slice(1).toLowerCase();
573
+ var bEnable = sCurrentMedia === IllustratedMessage.MEDIA[sMedia];
545
574
  this.toggleStyleClass(IllustratedMessage.MEDIA[sMedia], bEnable);
546
- if (bEnable && sCurrentMedia !== IllustratedMessage.MEDIA.BASE) { // No need to require a resource for BASE illustrationSize, since there is none
547
- this._getIllustration().setSet(this._sIllustrationSet, true)
548
- .setMedia(sIdMedia, true)
549
- .setType(this._sIllustrationType);
550
- }
551
575
  }, this);
552
576
  };
553
577
 
578
+ /**
579
+ * Updates illustration's symbol based on the current media size.
580
+ * @param {string} sCurrentMedia
581
+ * @private
582
+ */
583
+ IllustratedMessage.prototype._updateSymbol = function (sCurrentMedia) {
584
+ var sIdMedia = sCurrentMedia.substring(sCurrentMedia.indexOf('-') + 1);
585
+
586
+ if (sCurrentMedia !== IllustratedMessage.MEDIA.BASE) { // No need to require a resource for BASE illustrationSize, since there is none
587
+ this._getIllustration().setSet(this._sIllustrationSet, true)
588
+ .setMedia(sIdMedia, true)
589
+ .setType(this._sIllustrationType);
590
+ }
591
+ };
592
+
554
593
  /**
555
594
  * ATTACH/DETACH HANDLERS
556
595
  */
@@ -23,26 +23,30 @@ sap.ui.define([], function () {
23
23
  */
24
24
  IllustratedMessageRenderer.render = function (oRm, oIllustratedMessage) {
25
25
  var oIllustratedMessageIllustration = oIllustratedMessage._getIllustration(),
26
- oIllustratedMessageTitle = oIllustratedMessage._getTitle(),
27
- oIllustratedMessageDescription = oIllustratedMessage._getDescription(),
28
- oIllustratedMessageAdditionalContent = oIllustratedMessage.getAdditionalContent();
26
+ sIllustratedMessageTitle = oIllustratedMessage._getTitle(),
27
+ sIllustratedMessageDescription = oIllustratedMessage._getDescription(),
28
+ aIllustratedMessageAdditionalContent = oIllustratedMessage.getAdditionalContent(),
29
+ bIllustratedMessageEnableVerticalResponsiveness = oIllustratedMessage.getEnableVerticalResponsiveness();
29
30
 
30
31
  // IllustratedMessage's Root DOM Element.
31
32
  oRm.openStart("figure", oIllustratedMessage);
32
33
  oRm.class("sapMIllustratedMessage");
34
+ if (bIllustratedMessageEnableVerticalResponsiveness) {
35
+ oRm.class("sapMIllustratedMessageScalable");
36
+ }
33
37
  oRm.openEnd();
34
38
 
35
39
  oRm.renderControl(oIllustratedMessageIllustration);
36
40
 
37
41
  oRm.openStart("figcaption").openEnd();
38
- oRm.renderControl(oIllustratedMessageTitle);
39
- oRm.renderControl(oIllustratedMessageDescription.addStyleClass("sapMIllustratedMessageDescription"));
42
+ oRm.renderControl(sIllustratedMessageTitle);
43
+ oRm.renderControl(sIllustratedMessageDescription.addStyleClass("sapMIllustratedMessageDescription"));
40
44
  oRm.close("figcaption");
41
45
 
42
46
  oRm.openStart("div");
43
47
  oRm.class("sapMIllustratedMessageAdditionalContent"); // helper class in order to hide the additional content when on Base breakpoint
44
48
  oRm.openEnd();
45
- oIllustratedMessageAdditionalContent.forEach(function (oControl) {
49
+ aIllustratedMessageAdditionalContent.forEach(function (oControl) {
46
50
  oRm.renderControl(oControl);
47
51
  });
48
52
  oRm.close("div");
@@ -32,7 +32,7 @@ sap.ui.define([
32
32
  * @extends sap.ui.core.Control
33
33
  *
34
34
  * @author SAP SE
35
- * @version 1.103.0
35
+ * @version 1.105.0
36
36
  *
37
37
  * @constructor
38
38
  * @public
@@ -211,6 +211,7 @@ sap.ui.define([
211
211
  if (oDOMPool === null) {
212
212
  oDOMPool = document.createElement("div");
213
213
  oDOMPool.id = SAP_ILLUSTRATION_POOL_ID;
214
+ oDOMPool.ariaHidden = true;
214
215
 
215
216
  Core.getStaticAreaRef().appendChild(oDOMPool);
216
217
 
@@ -4,7 +4,7 @@
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
 
7
- sap.ui.define(["sap/ui/Device"], function (Device) {
7
+ sap.ui.define([], function () {
8
8
  "use strict";
9
9
 
10
10
  /**
@@ -57,7 +57,7 @@ sap.ui.define([
57
57
  * @implements sap.ui.core.IFormContent
58
58
  *
59
59
  * @author SAP SE
60
- * @version 1.103.0
60
+ * @version 1.105.0
61
61
  *
62
62
  * @public
63
63
  * @alias sap.m.Image
@@ -388,7 +388,7 @@ sap.ui.define([
388
388
  /**
389
389
  * Sets the <code>detailBox</code> aggregation.
390
390
  * @param {sap.m.LightBox|undefined} oLightBox - Instance of the <code>LightBox</code> control or undefined
391
- * @returns {object} <code>this</code> for chaining
391
+ * @returns {this} <code>this</code> for chaining
392
392
  * @override
393
393
  * @public
394
394
  */
@@ -33,7 +33,7 @@ sap.ui.define([
33
33
  * @extends sap.ui.core.Control
34
34
  *
35
35
  * @author SAP SE
36
- * @version 1.103.0
36
+ * @version 1.105.0
37
37
  * @since 1.38
38
38
  *
39
39
  * @public
@@ -8,6 +8,9 @@
8
8
  sap.ui.define([
9
9
  './InputBase',
10
10
  'sap/ui/core/Item',
11
+ 'sap/ui/core/Core',
12
+ 'sap/ui/core/LabelEnablement',
13
+ 'sap/ui/core/AccessKeysEnablement',
11
14
  './ColumnListItem',
12
15
  './GroupHeaderListItem',
13
16
  'sap/ui/core/SeparatorItem',
@@ -40,6 +43,9 @@ sap.ui.define([
40
43
  function(
41
44
  InputBase,
42
45
  Item,
46
+ Core,
47
+ LabelEnablement,
48
+ AccessKeysEnablement,
43
49
  ColumnListItem,
44
50
  GroupHeaderListItem,
45
51
  SeparatorItem,
@@ -149,8 +155,9 @@ function(
149
155
  * </ul>
150
156
  *
151
157
  * @extends sap.m.InputBase
158
+ * @implements sap.ui.core.IAccessKeySupport
152
159
  * @author SAP SE
153
- * @version 1.103.0
160
+ * @version 1.105.0
154
161
  *
155
162
  * @constructor
156
163
  * @public
@@ -159,7 +166,9 @@ function(
159
166
  * @ui5-metamodel This control/element also will be described in the UI5 (legacy) designtime metamodel
160
167
  */
161
168
  var Input = InputBase.extend("sap.m.Input", /** @lends sap.m.Input.prototype */ { metadata : {
162
-
169
+ interfaces : [
170
+ "sap.ui.core.IAccessKeySupport"
171
+ ],
163
172
  library : "sap.m",
164
173
  properties : {
165
174
 
@@ -326,7 +335,23 @@ function(
326
335
  * Specifies whether to display separators in tabular suggestions.
327
336
  * @private
328
337
  */
329
- separateSuggestions: { type: "boolean", defaultValue: false, visibility: "hidden" }
338
+ separateSuggestions: { type: "boolean", defaultValue: false, visibility: "hidden" },
339
+
340
+ /**
341
+ * Indicates whether the access keys ref of the control should be highlighted.
342
+ * NOTE: this property is used only when access keys feature is turned on.
343
+ *
344
+ * @private
345
+ */
346
+ highlightAccKeysRef: { type: "boolean", defaultValue: false, visibility: "hidden" },
347
+
348
+ /**
349
+ * Indicates which keyboard key should be pressed to focus the access key ref
350
+ * NOTE: this property is used only when access keys feature is turned on.
351
+ *
352
+ * @private
353
+ */
354
+ accesskey: { type: "string", defaultValue: "", visibility: "hidden" }
330
355
  },
331
356
  defaultAggregation : "suggestionItems",
332
357
  aggregations : {
@@ -398,7 +423,7 @@ function(
398
423
  /**
399
424
  * Fired when the value of the input is changed by user interaction - each keystroke, delete, paste, etc.
400
425
  *
401
- * <b>Note:</b> Browsing autocomplete suggestions does not fires the event.
426
+ * <b>Note:</b> Browsing autocomplete suggestions does not fire the event.
402
427
  */
403
428
  liveChange : {
404
429
  parameters : {
@@ -588,6 +613,28 @@ function(
588
613
  // indicates whether input's popover has finished opening
589
614
  // we asume that after open its content has been rendered => we don't have the power user scenario
590
615
  this._bAfterOpenFinisihed = false;
616
+
617
+ AccessKeysEnablement.registerControl(this);
618
+ };
619
+
620
+ var setRefLabelsHighlightAccKeysRef = function (bHighlightAccKeysRef) {
621
+ var aRefLabels = LabelEnablement.getReferencingLabels(this);
622
+
623
+ aRefLabels.forEach(function(sLabelId) {
624
+ Core.byId(sLabelId).setProperty("highlightAccKeysRef", bHighlightAccKeysRef);
625
+ }, this);
626
+ };
627
+
628
+ Input.prototype.getAccessKeysFocusTarget = function () {
629
+ return this.getFocusDomRef();
630
+ };
631
+
632
+ Input.prototype.onAccKeysHighlightStart = function () {
633
+ setRefLabelsHighlightAccKeysRef.call(this, true);
634
+ };
635
+
636
+ Input.prototype.onAccKeysHighlightEnd = function () {
637
+ setRefLabelsHighlightAccKeysRef.call(this, false);
591
638
  };
592
639
 
593
640
  /**
@@ -1327,9 +1374,6 @@ function(
1327
1374
  * @returns {this} this Input instance for chaining.
1328
1375
  */
1329
1376
  Input.prototype._doSelect = function(iStart, iEnd) {
1330
- if (Device.support.touch) {
1331
- return this;
1332
- }
1333
1377
  var oDomRef = this._$input[0];
1334
1378
  if (oDomRef) {
1335
1379
  // if no Dom-Ref - no selection (Maybe popup closed)
@@ -64,7 +64,7 @@ function(
64
64
  * @implements sap.ui.core.IFormContent
65
65
  *
66
66
  * @author SAP SE
67
- * @version 1.103.0
67
+ * @version 1.105.0
68
68
  *
69
69
  * @constructor
70
70
  * @public
@@ -4,8 +4,8 @@
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
 
7
- sap.ui.define(['sap/ui/core/Renderer', 'sap/ui/core/Core', 'sap/ui/core/library', 'sap/ui/core/ValueStateSupport', 'sap/ui/core/LabelEnablement', 'sap/ui/Device'],
8
- function(Renderer, Core, coreLibrary, ValueStateSupport, LabelEnablement, Device) {
7
+ sap.ui.define(['sap/ui/core/Renderer', 'sap/ui/core/Core', 'sap/ui/core/library', 'sap/ui/core/ValueStateSupport', 'sap/ui/Device'],
8
+ function(Renderer, Core, coreLibrary, ValueStateSupport, Device) {
9
9
  "use strict";
10
10
 
11
11
  // shortcut for sap.ui.core.TextDirection
@@ -30,7 +30,7 @@ sap.ui.define([
30
30
  * @extends sap.m.ListItemBase
31
31
  *
32
32
  * @author SAP SE
33
- * @version 1.103.0
33
+ * @version 1.105.0
34
34
  *
35
35
  * @constructor
36
36
  * @public
@@ -72,6 +72,10 @@ sap.ui.define(['sap/ui/core/InvisibleText', 'sap/ui/core/Renderer', './InputBase
72
72
  }
73
73
  };
74
74
 
75
+ InputRenderer.writeOuterAttributes = function (oRm, oControl) {
76
+ oRm.attr("data-ui5-accesskey", oControl.getProperty("accesskey"));
77
+ };
78
+
75
79
  /**
76
80
  * Adds inner css classes to the input field
77
81
  *
@@ -7,6 +7,7 @@
7
7
  // Provides control sap.m.Label
8
8
  sap.ui.define([
9
9
  './library',
10
+ "sap/ui/core/Core",
10
11
  'sap/ui/core/Control',
11
12
  'sap/ui/core/LabelEnablement',
12
13
  'sap/m/HyphenationSupport',
@@ -15,6 +16,7 @@ sap.ui.define([
15
16
  ],
16
17
  function(
17
18
  library,
19
+ Core,
18
20
  Control,
19
21
  LabelEnablement,
20
22
  HyphenationSupport,
@@ -73,10 +75,10 @@ function(
73
75
  * <li> It is not recommended to use labels in Bold.</li>
74
76
  * </ul>
75
77
  * @extends sap.ui.core.Control
76
- * @implements sap.ui.core.Label, sap.ui.core.IShrinkable
78
+ * @implements sap.ui.core.Label, sap.ui.core.IShrinkable, sap.ui.core.IAccessKeySupport
77
79
  *
78
80
  * @author SAP SE
79
- * @version 1.103.0
81
+ * @version 1.105.0
80
82
  *
81
83
  * @constructor
82
84
  * @public
@@ -90,7 +92,8 @@ function(
90
92
  "sap.ui.core.Label",
91
93
  "sap.ui.core.IShrinkable",
92
94
  "sap.m.IOverflowToolbarContent",
93
- "sap.m.IHyphenation"
95
+ "sap.m.IHyphenation",
96
+ "sap.ui.core.IAccessKeySupport"
94
97
  ],
95
98
  library : "sap.m",
96
99
  properties : {
@@ -168,7 +171,15 @@ function(
168
171
  * regardless of the value of the <code>showColon</code> property.
169
172
  * @since 1.98
170
173
  */
171
- showColon : {type : "boolean", group : "Appearance", defaultValue : false}
174
+ showColon : {type : "boolean", group : "Appearance", defaultValue : false},
175
+
176
+ /**
177
+ * Indicates whether the access keys ref of the control should be highlighted.
178
+ * NOTE: this property is used only when access keys feature is turned on.
179
+ *
180
+ * @private
181
+ */
182
+ highlightAccKeysRef: { type: "boolean", defaultValue: false, visibility: "hidden" }
172
183
  },
173
184
  associations : {
174
185
 
@@ -201,6 +212,25 @@ function(
201
212
  };
202
213
  };
203
214
 
215
+ Label.prototype.onBeforeRendering = function () {
216
+ this._handleAccessKeysHighlighting();
217
+ };
218
+
219
+ Label.prototype._handleAccessKeysHighlighting = function () {
220
+ var sLabelForId = this.getLabelFor();
221
+ var sText = this.getText();
222
+
223
+ if (!sLabelForId || !sText) {
224
+ return;
225
+ }
226
+
227
+ var oLabeledControl = Core.byId(sLabelForId);
228
+
229
+ if (oLabeledControl && oLabeledControl.isA("sap.m.Input") && oLabeledControl.getProperty("highlightAccKeysRef")) {
230
+ Core.byId(sLabelForId).setProperty("accesskey", (sText[0].toLowerCase()), true);
231
+ }
232
+ };
233
+
204
234
  /**
205
235
  * Enables the <code>sap.m.Label</code> to move inside the sap.m.OverflowToolbar.
206
236
  * Required by the {@link sap.m.IOverflowToolbarContent} interface.
@@ -5,8 +5,8 @@
5
5
  */
6
6
 
7
7
  // Provides the default renderer for control sap.m.Label
8
- sap.ui.define(['sap/ui/core/Core', 'sap/ui/core/Renderer', 'sap/m/library', 'sap/ui/core/library', 'sap/m/HyphenationSupport', "sap/ui/core/LabelEnablement"],
9
- function(Core, Renderer, library, coreLibrary, HyphenationSupport, LabelEnablement) {
8
+ sap.ui.define(['sap/ui/core/Core', 'sap/ui/core/Renderer', 'sap/ui/core/AccessKeysEnablement', 'sap/m/library', 'sap/ui/core/library', 'sap/m/HyphenationSupport', "sap/ui/core/LabelEnablement"],
9
+ function(Core, Renderer, AccessKeysEnablement, library, coreLibrary, HyphenationSupport, LabelEnablement) {
10
10
  "use strict";
11
11
 
12
12
  // shortcut for sap.ui.core.TextDirection
@@ -123,6 +123,11 @@ sap.ui.define(['sap/ui/core/Core', 'sap/ui/core/Renderer', 'sap/m/library', 'sap
123
123
  // wrap the label text
124
124
  rm.openStart("span", oLabel.getId() + "-text");
125
125
  rm.class("sapMLabelTextWrapper");
126
+
127
+ if (oLabel.getProperty("highlightAccKeysRef")) {
128
+ rm.class(AccessKeysEnablement.CSS_CLASS);
129
+ }
130
+
126
131
  rm.openEnd();
127
132
 
128
133
  // write the label text
@@ -99,7 +99,7 @@ sap.ui.define([
99
99
  * @extends sap.ui.core.Control
100
100
  *
101
101
  * @author SAP SE
102
- * @version 1.103.0
102
+ * @version 1.105.0
103
103
  *
104
104
  * @constructor
105
105
  * @public
@@ -43,7 +43,7 @@ sap.ui.define([
43
43
  * @extends sap.ui.core.Element
44
44
  *
45
45
  * @author SAP SE
46
- * @version 1.103.0
46
+ * @version 1.105.0
47
47
  *
48
48
  * @constructor
49
49
  * @public