@openui5/sap.m 1.102.2 → 1.102.4

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 (338) hide show
  1. package/THIRDPARTY.txt +1 -1
  2. package/package.json +4 -4
  3. package/src/sap/m/.library +1 -1
  4. package/src/sap/m/AccButton.js +1 -1
  5. package/src/sap/m/ActionListItem.js +1 -1
  6. package/src/sap/m/ActionSelect.js +1 -1
  7. package/src/sap/m/ActionSheet.js +1 -1
  8. package/src/sap/m/App.js +1 -1
  9. package/src/sap/m/AssociativeOverflowToolbar.js +1 -1
  10. package/src/sap/m/Avatar.js +1 -1
  11. package/src/sap/m/Bar.js +1 -1
  12. package/src/sap/m/Breadcrumbs.js +1 -1
  13. package/src/sap/m/BusyDialog.js +1 -1
  14. package/src/sap/m/BusyIndicator.js +1 -1
  15. package/src/sap/m/Button.js +1 -1
  16. package/src/sap/m/Carousel.js +1 -1
  17. package/src/sap/m/CarouselLayout.js +1 -1
  18. package/src/sap/m/CheckBox.js +1 -1
  19. package/src/sap/m/ColorPalette.js +1 -1
  20. package/src/sap/m/ColorPalettePopover.js +1 -1
  21. package/src/sap/m/Column.js +1 -1
  22. package/src/sap/m/ColumnHeaderPopover.js +1 -1
  23. package/src/sap/m/ColumnListItem.js +1 -1
  24. package/src/sap/m/ColumnPopoverActionItem.js +1 -1
  25. package/src/sap/m/ColumnPopoverCustomItem.js +1 -1
  26. package/src/sap/m/ColumnPopoverItem.js +1 -1
  27. package/src/sap/m/ColumnPopoverSelectListItem.js +1 -1
  28. package/src/sap/m/ColumnPopoverSortItem.js +1 -1
  29. package/src/sap/m/ComboBox.js +1 -1
  30. package/src/sap/m/ComboBoxBase.js +1 -1
  31. package/src/sap/m/ComboBoxTextField.js +1 -1
  32. package/src/sap/m/CustomDynamicDateOption.js +1 -1
  33. package/src/sap/m/CustomListItem.js +1 -1
  34. package/src/sap/m/CustomTile.js +1 -1
  35. package/src/sap/m/CustomTreeItem.js +1 -1
  36. package/src/sap/m/DatePicker.js +14 -20
  37. package/src/sap/m/DateRangeSelection.js +45 -38
  38. package/src/sap/m/DateTimeField.js +31 -20
  39. package/src/sap/m/DateTimeInput.js +1 -1
  40. package/src/sap/m/DateTimePicker.js +22 -15
  41. package/src/sap/m/Dialog.js +1 -1
  42. package/src/sap/m/DisplayListItem.js +1 -1
  43. package/src/sap/m/DraftIndicator.js +1 -1
  44. package/src/sap/m/DynamicDate.js +1 -1
  45. package/src/sap/m/DynamicDateFormat.js +1 -1
  46. package/src/sap/m/DynamicDateOption.js +38 -13
  47. package/src/sap/m/DynamicDateRange.js +1 -1
  48. package/src/sap/m/DynamicDateUtil.js +23 -2
  49. package/src/sap/m/DynamicDateValueHelpUIType.js +1 -1
  50. package/src/sap/m/ExpandableText.js +1 -1
  51. package/src/sap/m/FacetFilter.js +1 -1
  52. package/src/sap/m/FacetFilterItem.js +1 -1
  53. package/src/sap/m/FacetFilterList.js +1 -1
  54. package/src/sap/m/FeedContent.js +1 -1
  55. package/src/sap/m/FeedInput.js +1 -1
  56. package/src/sap/m/FeedListItem.js +1 -1
  57. package/src/sap/m/FeedListItemAction.js +1 -1
  58. package/src/sap/m/Fiori20Adapter.js +2 -2
  59. package/src/sap/m/FlexBox.js +1 -1
  60. package/src/sap/m/FlexItemData.js +1 -1
  61. package/src/sap/m/FormattedText.js +1 -1
  62. package/src/sap/m/GenericTag.js +1 -1
  63. package/src/sap/m/GenericTile.js +21 -6
  64. package/src/sap/m/GroupHeaderListItem.js +1 -1
  65. package/src/sap/m/GrowingEnablement.js +53 -7
  66. package/src/sap/m/GrowingList.js +1 -1
  67. package/src/sap/m/HBox.js +1 -1
  68. package/src/sap/m/HeaderContainer.js +1 -1
  69. package/src/sap/m/HeaderContainerItemNavigator.js +1 -1
  70. package/src/sap/m/IconTabBar.js +54 -22
  71. package/src/sap/m/IconTabBarSelectList.js +1 -1
  72. package/src/sap/m/IconTabFilter.js +1 -1
  73. package/src/sap/m/IconTabFilterExpandButtonBadge.js +1 -1
  74. package/src/sap/m/IconTabHeader.js +3 -2
  75. package/src/sap/m/IconTabSeparator.js +1 -1
  76. package/src/sap/m/IllustratedMessage.js +1 -1
  77. package/src/sap/m/Illustration.js +1 -1
  78. package/src/sap/m/Image.js +1 -1
  79. package/src/sap/m/ImageContent.js +1 -1
  80. package/src/sap/m/Input.js +1 -1
  81. package/src/sap/m/InputBase.js +1 -1
  82. package/src/sap/m/InputListItem.js +1 -1
  83. package/src/sap/m/Label.js +1 -1
  84. package/src/sap/m/LightBox.js +1 -1
  85. package/src/sap/m/LightBoxItem.js +1 -1
  86. package/src/sap/m/Link.js +21 -5
  87. package/src/sap/m/LinkRenderer.js +17 -9
  88. package/src/sap/m/List.js +1 -1
  89. package/src/sap/m/ListBase.js +4 -1
  90. package/src/sap/m/ListItemBase.js +1 -1
  91. package/src/sap/m/MaskEnabler.js +1 -1
  92. package/src/sap/m/MaskInput.js +1 -1
  93. package/src/sap/m/MaskInputRule.js +1 -1
  94. package/src/sap/m/Menu.js +1 -1
  95. package/src/sap/m/MenuButton.js +1 -1
  96. package/src/sap/m/MenuItem.js +1 -1
  97. package/src/sap/m/MenuListItem.js +1 -1
  98. package/src/sap/m/MessageItem.js +1 -1
  99. package/src/sap/m/MessageListItem.js +1 -1
  100. package/src/sap/m/MessagePage.js +1 -1
  101. package/src/sap/m/MessagePopover.js +1 -1
  102. package/src/sap/m/MessagePopoverItem.js +1 -1
  103. package/src/sap/m/MessageStrip.js +1 -1
  104. package/src/sap/m/MessageToast.js +1 -1
  105. package/src/sap/m/MessageView.js +1 -1
  106. package/src/sap/m/MultiComboBox.js +1 -1
  107. package/src/sap/m/MultiEditField.js +1 -1
  108. package/src/sap/m/MultiInput.js +1 -1
  109. package/src/sap/m/NavContainer.js +1 -1
  110. package/src/sap/m/NewsContent.js +1 -1
  111. package/src/sap/m/NotificationList.js +1 -1
  112. package/src/sap/m/NotificationListBase.js +1 -1
  113. package/src/sap/m/NotificationListGroup.js +1 -1
  114. package/src/sap/m/NotificationListItem.js +1 -1
  115. package/src/sap/m/NumericContent.js +1 -1
  116. package/src/sap/m/NumericInput.js +1 -1
  117. package/src/sap/m/ObjectAttribute.js +1 -1
  118. package/src/sap/m/ObjectHeader.js +1 -1
  119. package/src/sap/m/ObjectIdentifier.js +1 -1
  120. package/src/sap/m/ObjectListItem.js +1 -1
  121. package/src/sap/m/ObjectMarker.js +1 -1
  122. package/src/sap/m/ObjectNumber.js +1 -1
  123. package/src/sap/m/ObjectStatus.js +1 -1
  124. package/src/sap/m/OverflowToolbar.js +5 -2
  125. package/src/sap/m/OverflowToolbarAssociativePopover.js +1 -1
  126. package/src/sap/m/OverflowToolbarButton.js +1 -1
  127. package/src/sap/m/OverflowToolbarLayoutData.js +1 -1
  128. package/src/sap/m/OverflowToolbarToggleButton.js +1 -1
  129. package/src/sap/m/P13nAnyFilterItem.js +1 -1
  130. package/src/sap/m/P13nColumnsItem.js +1 -1
  131. package/src/sap/m/P13nColumnsPanel.js +1 -1
  132. package/src/sap/m/P13nConditionPanel.js +8 -1
  133. package/src/sap/m/P13nDialog.js +1 -1
  134. package/src/sap/m/P13nDimMeasureItem.js +1 -1
  135. package/src/sap/m/P13nDimMeasurePanel.js +1 -1
  136. package/src/sap/m/P13nFilterItem.js +1 -1
  137. package/src/sap/m/P13nFilterPanel.js +1 -1
  138. package/src/sap/m/P13nGroupItem.js +1 -1
  139. package/src/sap/m/P13nGroupPanel.js +1 -1
  140. package/src/sap/m/P13nItem.js +1 -1
  141. package/src/sap/m/P13nPanel.js +1 -1
  142. package/src/sap/m/P13nSelectionItem.js +1 -1
  143. package/src/sap/m/P13nSelectionPanel.js +1 -1
  144. package/src/sap/m/P13nSortItem.js +1 -1
  145. package/src/sap/m/P13nSortPanel.js +1 -1
  146. package/src/sap/m/PDFViewer.js +1 -1
  147. package/src/sap/m/Page.js +1 -1
  148. package/src/sap/m/PageAccessibleLandmarkInfo.js +1 -1
  149. package/src/sap/m/PagingButton.js +1 -1
  150. package/src/sap/m/Panel.js +1 -1
  151. package/src/sap/m/PlanningCalendar.js +1 -1
  152. package/src/sap/m/PlanningCalendarHeader.js +1 -1
  153. package/src/sap/m/PlanningCalendarLegend.js +1 -1
  154. package/src/sap/m/PlanningCalendarRow.js +1 -1
  155. package/src/sap/m/PlanningCalendarView.js +1 -1
  156. package/src/sap/m/Popover.js +1 -1
  157. package/src/sap/m/ProgressIndicator.js +1 -1
  158. package/src/sap/m/PullToRefresh.js +1 -1
  159. package/src/sap/m/QuickView.js +1 -1
  160. package/src/sap/m/QuickViewBase.js +1 -1
  161. package/src/sap/m/QuickViewCard.js +1 -1
  162. package/src/sap/m/QuickViewGroup.js +1 -1
  163. package/src/sap/m/QuickViewGroupElement.js +1 -1
  164. package/src/sap/m/QuickViewPage.js +1 -1
  165. package/src/sap/m/RadioButton.js +1 -1
  166. package/src/sap/m/RadioButtonGroup.js +1 -1
  167. package/src/sap/m/RangeSlider.js +1 -1
  168. package/src/sap/m/RatingIndicator.js +1 -1
  169. package/src/sap/m/ResponsivePopover.js +1 -1
  170. package/src/sap/m/ResponsiveScale.js +1 -1
  171. package/src/sap/m/ScrollBar.js +1 -1
  172. package/src/sap/m/ScrollContainer.js +1 -1
  173. package/src/sap/m/SearchField.js +1 -1
  174. package/src/sap/m/SegmentedButton.js +1 -1
  175. package/src/sap/m/SegmentedButtonItem.js +1 -1
  176. package/src/sap/m/Select.js +1 -1
  177. package/src/sap/m/SelectDialog.js +1 -1
  178. package/src/sap/m/SelectDialogBase.js +1 -1
  179. package/src/sap/m/SelectList.js +1 -1
  180. package/src/sap/m/SelectionDetails.js +1 -1
  181. package/src/sap/m/SelectionDetailsFacade.js +2 -2
  182. package/src/sap/m/SelectionDetailsItem.js +1 -1
  183. package/src/sap/m/SelectionDetailsItemLine.js +1 -1
  184. package/src/sap/m/Shell.js +1 -1
  185. package/src/sap/m/SimpleFixFlex.js +1 -1
  186. package/src/sap/m/SinglePlanningCalendar.js +1 -1
  187. package/src/sap/m/SinglePlanningCalendarDayView.js +1 -1
  188. package/src/sap/m/SinglePlanningCalendarGrid.js +1 -1
  189. package/src/sap/m/SinglePlanningCalendarMonthGrid.js +1 -1
  190. package/src/sap/m/SinglePlanningCalendarMonthView.js +1 -1
  191. package/src/sap/m/SinglePlanningCalendarView.js +1 -1
  192. package/src/sap/m/SinglePlanningCalendarWeekView.js +1 -1
  193. package/src/sap/m/SinglePlanningCalendarWorkWeekView.js +1 -1
  194. package/src/sap/m/SlideTile.js +1 -1
  195. package/src/sap/m/Slider.js +1 -1
  196. package/src/sap/m/SliderTooltip.js +1 -1
  197. package/src/sap/m/SliderTooltipBase.js +1 -1
  198. package/src/sap/m/SliderTooltipContainer.js +1 -1
  199. package/src/sap/m/SplitApp.js +1 -1
  200. package/src/sap/m/SplitButton.js +1 -1
  201. package/src/sap/m/SplitContainer.js +1 -1
  202. package/src/sap/m/StandardDynamicDateOption.js +9 -5
  203. package/src/sap/m/StandardListItem.js +1 -1
  204. package/src/sap/m/StandardTile.js +1 -1
  205. package/src/sap/m/StandardTreeItem.js +1 -1
  206. package/src/sap/m/StepInput.js +1 -1
  207. package/src/sap/m/SuggestionItem.js +1 -1
  208. package/src/sap/m/SuggestionsPopover.js +1 -1
  209. package/src/sap/m/Switch.js +1 -1
  210. package/src/sap/m/TabContainer.js +1 -1
  211. package/src/sap/m/TabContainerItem.js +1 -1
  212. package/src/sap/m/TabStrip.js +1 -1
  213. package/src/sap/m/TabStripItem.js +1 -1
  214. package/src/sap/m/Table.js +1 -1
  215. package/src/sap/m/TablePersoController.js +1 -1
  216. package/src/sap/m/TablePersoDialog.js +1 -1
  217. package/src/sap/m/TablePersoProvider.js +1 -1
  218. package/src/sap/m/TableSelectDialog.js +1 -1
  219. package/src/sap/m/Text.js +1 -1
  220. package/src/sap/m/TextArea.js +1 -1
  221. package/src/sap/m/Tile.js +1 -1
  222. package/src/sap/m/TileContainer.js +1 -1
  223. package/src/sap/m/TileContent.js +8 -9
  224. package/src/sap/m/TimePicker.js +14 -2
  225. package/src/sap/m/TimePickerClock.js +1 -1
  226. package/src/sap/m/TimePickerClocks.js +5 -3
  227. package/src/sap/m/TimePickerInputs.js +1 -1
  228. package/src/sap/m/TimePickerInternals.js +1 -1
  229. package/src/sap/m/TimePickerSlider.js +1 -1
  230. package/src/sap/m/TimePickerSliders.js +1 -1
  231. package/src/sap/m/Title.js +1 -1
  232. package/src/sap/m/TitlePropagationSupport.js +1 -1
  233. package/src/sap/m/ToggleButton.js +1 -1
  234. package/src/sap/m/Token.js +1 -1
  235. package/src/sap/m/Tokenizer.js +1 -1
  236. package/src/sap/m/Toolbar.js +1 -1
  237. package/src/sap/m/ToolbarLayoutData.js +1 -1
  238. package/src/sap/m/ToolbarSeparator.js +1 -1
  239. package/src/sap/m/ToolbarSpacer.js +1 -1
  240. package/src/sap/m/Tree.js +1 -1
  241. package/src/sap/m/TreeItemBase.js +1 -1
  242. package/src/sap/m/UploadCollection.js +1 -1
  243. package/src/sap/m/UploadCollectionItem.js +1 -1
  244. package/src/sap/m/UploadCollectionParameter.js +1 -1
  245. package/src/sap/m/UploadCollectionToolbarPlaceholder.js +1 -1
  246. package/src/sap/m/VBox.js +1 -1
  247. package/src/sap/m/ValueStateHeader.js +1 -1
  248. package/src/sap/m/ViewSettingsCustomItem.js +1 -1
  249. package/src/sap/m/ViewSettingsCustomTab.js +1 -1
  250. package/src/sap/m/ViewSettingsDialog.js +1 -1
  251. package/src/sap/m/ViewSettingsFilterItem.js +1 -1
  252. package/src/sap/m/ViewSettingsItem.js +1 -1
  253. package/src/sap/m/VisibleItem.js +1 -1
  254. package/src/sap/m/WheelSlider.js +1 -1
  255. package/src/sap/m/WheelSliderContainer.js +1 -1
  256. package/src/sap/m/Wizard.js +1 -1
  257. package/src/sap/m/WizardProgressNavigator.js +1 -1
  258. package/src/sap/m/WizardStep.js +1 -1
  259. package/src/sap/m/changeHandler/AddTableColumn.js +1 -1
  260. package/src/sap/m/changeHandler/ChangeLinkTarget.js +1 -1
  261. package/src/sap/m/changeHandler/CombineButtons.js +1 -1
  262. package/src/sap/m/changeHandler/MoveTableColumns.js +1 -1
  263. package/src/sap/m/changeHandler/SelectIconTabBarFilter.js +1 -1
  264. package/src/sap/m/changeHandler/SplitMenuButton.js +1 -1
  265. package/src/sap/m/library.js +27 -2
  266. package/src/sap/m/messagebundle.properties +8 -0
  267. package/src/sap/m/p13n/AbstractContainer.js +2 -2
  268. package/src/sap/m/p13n/AbstractContainerItem.js +2 -2
  269. package/src/sap/m/p13n/BasePanel.js +1 -1
  270. package/src/sap/m/p13n/Container.js +1 -1
  271. package/src/sap/m/p13n/GroupPanel.js +1 -1
  272. package/src/sap/m/p13n/Popup.js +1 -1
  273. package/src/sap/m/p13n/QueryPanel.js +1 -1
  274. package/src/sap/m/p13n/SelectionPanel.js +1 -1
  275. package/src/sap/m/p13n/SortPanel.js +1 -1
  276. package/src/sap/m/plugins/ColumnResizer.js +15 -1
  277. package/src/sap/m/plugins/DataStateIndicator.js +1 -1
  278. package/src/sap/m/plugins/PasteProvider.js +1 -1
  279. package/src/sap/m/plugins/PluginBase.js +1 -1
  280. package/src/sap/m/semantic/AddAction.js +1 -1
  281. package/src/sap/m/semantic/CancelAction.js +1 -1
  282. package/src/sap/m/semantic/DeleteAction.js +1 -1
  283. package/src/sap/m/semantic/DetailPage.js +1 -1
  284. package/src/sap/m/semantic/DiscussInJamAction.js +1 -1
  285. package/src/sap/m/semantic/EditAction.js +1 -1
  286. package/src/sap/m/semantic/FavoriteAction.js +1 -1
  287. package/src/sap/m/semantic/FilterAction.js +1 -1
  288. package/src/sap/m/semantic/FilterSelect.js +1 -1
  289. package/src/sap/m/semantic/FlagAction.js +1 -1
  290. package/src/sap/m/semantic/ForwardAction.js +1 -1
  291. package/src/sap/m/semantic/FullscreenPage.js +1 -1
  292. package/src/sap/m/semantic/GroupAction.js +1 -1
  293. package/src/sap/m/semantic/GroupSelect.js +1 -1
  294. package/src/sap/m/semantic/MainAction.js +1 -1
  295. package/src/sap/m/semantic/MasterPage.js +1 -1
  296. package/src/sap/m/semantic/MessagesIndicator.js +1 -1
  297. package/src/sap/m/semantic/MultiSelectAction.js +1 -1
  298. package/src/sap/m/semantic/NegativeAction.js +1 -1
  299. package/src/sap/m/semantic/OpenInAction.js +1 -1
  300. package/src/sap/m/semantic/PositiveAction.js +1 -1
  301. package/src/sap/m/semantic/PrintAction.js +1 -1
  302. package/src/sap/m/semantic/SaveAction.js +1 -1
  303. package/src/sap/m/semantic/Segment.js +1 -1
  304. package/src/sap/m/semantic/SegmentedContainer.js +1 -1
  305. package/src/sap/m/semantic/SemanticButton.js +1 -1
  306. package/src/sap/m/semantic/SemanticConfiguration.js +1 -1
  307. package/src/sap/m/semantic/SemanticControl.js +1 -1
  308. package/src/sap/m/semantic/SemanticOverflowToolbarButton.js +1 -1
  309. package/src/sap/m/semantic/SemanticOverflowToolbarToggleButton.js +1 -1
  310. package/src/sap/m/semantic/SemanticPage.js +1 -1
  311. package/src/sap/m/semantic/SemanticSelect.js +1 -1
  312. package/src/sap/m/semantic/SemanticToggleButton.js +1 -1
  313. package/src/sap/m/semantic/SendEmailAction.js +1 -1
  314. package/src/sap/m/semantic/SendMessageAction.js +1 -1
  315. package/src/sap/m/semantic/ShareInJamAction.js +1 -1
  316. package/src/sap/m/semantic/ShareMenu.js +1 -1
  317. package/src/sap/m/semantic/ShareMenuPage.js +1 -1
  318. package/src/sap/m/semantic/SortAction.js +1 -1
  319. package/src/sap/m/semantic/SortSelect.js +1 -1
  320. package/src/sap/m/table/Util.js +1 -1
  321. package/src/sap/m/table/columnmenu/ActionItem.js +1 -1
  322. package/src/sap/m/table/columnmenu/Entry.js +1 -1
  323. package/src/sap/m/table/columnmenu/Item.js +1 -1
  324. package/src/sap/m/table/columnmenu/ItemBase.js +1 -1
  325. package/src/sap/m/table/columnmenu/Menu.js +1 -1
  326. package/src/sap/m/table/columnmenu/QuickAction.js +1 -1
  327. package/src/sap/m/table/columnmenu/QuickActionBase.js +1 -1
  328. package/src/sap/m/table/columnmenu/QuickActionItem.js +1 -1
  329. package/src/sap/m/table/columnmenu/QuickGroup.js +1 -1
  330. package/src/sap/m/table/columnmenu/QuickGroupItem.js +1 -1
  331. package/src/sap/m/table/columnmenu/QuickSort.js +1 -1
  332. package/src/sap/m/table/columnmenu/QuickSortItem.js +1 -1
  333. package/src/sap/m/table/columnmenu/QuickTotal.js +1 -1
  334. package/src/sap/m/table/columnmenu/QuickTotalItem.js +1 -1
  335. package/src/sap/m/themes/base/Table.less +7 -1
  336. package/src/sap/m/upload/UploadSet.js +7 -1
  337. package/src/sap/m/upload/UploadSetItem.js +1 -1
  338. package/src/sap/m/upload/UploadSetToolbarPlaceholder.js +1 -1
@@ -125,7 +125,7 @@ sap.ui.define([
125
125
  * @since 1.44.0
126
126
  *
127
127
  * @author SAP SE
128
- * @version 1.102.2
128
+ * @version 1.102.4
129
129
  *
130
130
  * @public
131
131
  * @alias sap.m.HeaderContainer
@@ -19,7 +19,7 @@ sap.ui.define([
19
19
  * @since 1.67.0
20
20
  *
21
21
  * @author SAP SE
22
- * @version 1.102.2
22
+ * @version 1.102.4
23
23
  *
24
24
  * @constructor
25
25
  * @alias sap.m.HeaderContainerItemNavigator
@@ -94,7 +94,7 @@ sap.ui.define([
94
94
  * @implements sap.m.ObjectHeaderContainer, sap.f.IDynamicPageStickyContent
95
95
  *
96
96
  * @author SAP SE
97
- * @version 1.102.2
97
+ * @version 1.102.4
98
98
  *
99
99
  * @public
100
100
  * @alias sap.m.IconTabBar
@@ -374,10 +374,14 @@ sap.ui.define([
374
374
  * @return {this} this IconTabBar reference for chaining.
375
375
  */
376
376
  IconTabBar.prototype.setHeaderMode = function (mode) {
377
+ var oIconTabHeader = this._getIconTabHeader();
378
+
377
379
  // set internal property
378
380
  this.setProperty("headerMode", mode, true);
379
381
 
380
- this._getIconTabHeader().setMode(mode);
382
+ if (oIconTabHeader) {
383
+ oIconTabHeader.setMode(mode);
384
+ }
381
385
 
382
386
  return this;
383
387
  };
@@ -390,10 +394,14 @@ sap.ui.define([
390
394
  * @return {this} this IconTabBar reference for chaining.
391
395
  */
392
396
  IconTabBar.prototype.setTabDensityMode = function (mode) {
397
+ var oIconTabHeader = this._getIconTabHeader();
398
+
393
399
  // set internal property
394
400
  this.setProperty("tabDensityMode", mode);
395
401
 
396
- this._getIconTabHeader().setTabDensityMode(mode);
402
+ if (oIconTabHeader) {
403
+ oIconTabHeader.setTabDensityMode(mode);
404
+ }
397
405
 
398
406
  return this;
399
407
  };
@@ -407,10 +415,14 @@ sap.ui.define([
407
415
  * @return {this} this IconTabBar reference for chaining.
408
416
  */
409
417
  IconTabBar.prototype.setHeaderBackgroundDesign = function (headerBackgroundDesign) {
418
+ var oIconTabHeader = this._getIconTabHeader();
419
+
410
420
  // set internal property
411
421
  this.setProperty("headerBackgroundDesign", headerBackgroundDesign, true);
412
422
 
413
- this._getIconTabHeader().setBackgroundDesign(headerBackgroundDesign);
423
+ if (oIconTabHeader) {
424
+ oIconTabHeader.setBackgroundDesign(headerBackgroundDesign);
425
+ }
414
426
 
415
427
  return this;
416
428
  };
@@ -423,10 +435,14 @@ sap.ui.define([
423
435
  * @return {this} this IconTabBar reference for chaining.
424
436
  */
425
437
  IconTabBar.prototype.setEnableTabReordering = function (value) {
438
+ var oIconTabHeader = this._getIconTabHeader();
439
+
426
440
  // set internal property
427
441
  this.setProperty("enableTabReordering", value, true);
428
442
 
429
- this._getIconTabHeader().setEnableTabReordering(value);
443
+ if (oIconTabHeader) {
444
+ oIconTabHeader.setEnableTabReordering(value);
445
+ }
430
446
 
431
447
  return this;
432
448
  };
@@ -439,10 +455,14 @@ sap.ui.define([
439
455
  * @returns {this} this Reference to this in order to allow method chaining
440
456
  */
441
457
  IconTabBar.prototype.setAriaTexts = function (oAriaTexts) {
458
+ var oIconTabHeader = this._getIconTabHeader();
459
+
442
460
  // set internal property
443
461
  this.setProperty("ariaTexts", oAriaTexts, true);
444
462
 
445
- this._getIconTabHeader().setAriaTexts(oAriaTexts);
463
+ if (oIconTabHeader) {
464
+ oIconTabHeader.setAriaTexts(oAriaTexts);
465
+ }
446
466
 
447
467
  return this;
448
468
  };
@@ -450,7 +470,7 @@ sap.ui.define([
450
470
  IconTabBar.prototype.addStyleClass = function (sClass, bSuppressRerendering) {
451
471
  var oIconTabHeader = this._getIconTabHeader();
452
472
 
453
- if (IconTabBar._CLASSES_TO_COPY.indexOf(sClass) !== -1) {
473
+ if (oIconTabHeader && IconTabBar._CLASSES_TO_COPY.indexOf(sClass) !== -1) {
454
474
  oIconTabHeader.addStyleClass(sClass, true);
455
475
  }
456
476
 
@@ -460,7 +480,7 @@ sap.ui.define([
460
480
  IconTabBar.prototype.removeStyleClass = function (sClass, bSuppressRerendering) {
461
481
  var oIconTabHeader = this._getIconTabHeader();
462
482
 
463
- if (IconTabBar._CLASSES_TO_COPY.indexOf(sClass) !== -1) {
483
+ if (oIconTabHeader && IconTabBar._CLASSES_TO_COPY.indexOf(sClass) !== -1) {
464
484
  oIconTabHeader.removeStyleClass(sClass, true);
465
485
  }
466
486
 
@@ -588,9 +608,13 @@ sap.ui.define([
588
608
  * Lazy initializes the iconTabHeader aggregation.
589
609
  *
590
610
  * @private
591
- * @returns {sap.m.IconTabBar} Aggregation for the IconTabBar.
611
+ * @returns {sap.m.IconTabBar|null} Aggregation for the IconTabBar.
592
612
  */
593
613
  IconTabBar.prototype._getIconTabHeader = function () {
614
+ if (this.isDestroyed()) {
615
+ return null;
616
+ }
617
+
594
618
  var oControl = this.getAggregation("_header");
595
619
 
596
620
  if (!oControl) {
@@ -646,18 +670,15 @@ sap.ui.define([
646
670
  * @returns {this} this IconTabBar reference for chaining.
647
671
  */
648
672
  IconTabBar.prototype.setShowSelection = function (bValue) {
649
- this._getIconTabHeader().setShowSelection(bValue);
650
- return this;
651
- };
673
+ var oIconTabHeader = this._getIconTabHeader();
652
674
 
653
- /**
654
- * Reflector for the internal header's showSelection property.
655
- *
656
- * @public
657
- * @returns {boolean} The current property value.
658
- */
659
- IconTabBar.prototype.getShowSelection = function () {
660
- return this._getIconTabHeader().getShowSelection();
675
+ if (oIconTabHeader) {
676
+ oIconTabHeader.setShowSelection(bValue);
677
+ }
678
+
679
+ this.setProperty("showSelection", bValue, true);
680
+
681
+ return this;
661
682
  };
662
683
 
663
684
  /**
@@ -668,7 +689,12 @@ sap.ui.define([
668
689
  * @returns {this} this Pointer for chaining.
669
690
  */
670
691
  IconTabBar.prototype.setSelectedKey = function (sValue) {
671
- this._getIconTabHeader().setSelectedKey(sValue);
692
+ var oIconTabHeader = this._getIconTabHeader();
693
+
694
+ if (oIconTabHeader) {
695
+ oIconTabHeader.setSelectedKey(sValue);
696
+ }
697
+
672
698
  return this;
673
699
  };
674
700
 
@@ -679,7 +705,13 @@ sap.ui.define([
679
705
  * @returns {string} The current property value.
680
706
  */
681
707
  IconTabBar.prototype.getSelectedKey = function () {
682
- return this._getIconTabHeader().getSelectedKey();
708
+ var oIconTabHeader = this._getIconTabHeader();
709
+
710
+ if (oIconTabHeader) {
711
+ return oIconTabHeader.getSelectedKey();
712
+ }
713
+
714
+ return this.getMetadata().getProperty("selectedKey").getDefaultValue();
683
715
  };
684
716
 
685
717
  /**
@@ -38,7 +38,7 @@ sap.ui.define([
38
38
  * @extends sap.ui.core.Control
39
39
  *
40
40
  * @author SAP SE
41
- * @version 1.102.2
41
+ * @version 1.102.4
42
42
  *
43
43
  * @constructor
44
44
  * @private
@@ -94,7 +94,7 @@ sap.ui.define([
94
94
  * @implements sap.m.IconTab
95
95
  *
96
96
  * @author SAP SE
97
- * @version 1.102.2
97
+ * @version 1.102.4
98
98
  *
99
99
  * @constructor
100
100
  * @public
@@ -31,7 +31,7 @@ sap.ui.define([
31
31
  * @extends sap.ui.core.Control
32
32
  *
33
33
  * @author SAP SE
34
- * @version 1.102.2
34
+ * @version 1.102.4
35
35
  *
36
36
  * @constructor
37
37
  * @private
@@ -77,7 +77,7 @@ sap.ui.define([
77
77
  * @extends sap.ui.core.Control
78
78
  *
79
79
  * @author SAP SE
80
- * @version 1.102.2
80
+ * @version 1.102.4
81
81
  *
82
82
  * @constructor
83
83
  * @public
@@ -426,7 +426,7 @@ sap.ui.define([
426
426
  for (var i = 0; i < aItems.length; i++) {
427
427
  oItem = aItems[i];
428
428
 
429
- if (oItem instanceof IconTabFilter == false) {
429
+ if (!oItem.isA("sap.m.IconTabFilter") || !oItem.getVisible()) {
430
430
  continue;
431
431
  }
432
432
 
@@ -436,6 +436,7 @@ sap.ui.define([
436
436
  break;
437
437
  }
438
438
  }
439
+
439
440
  this._oItemNavigation.setFocusedIndex(iIndex);
440
441
  };
441
442
 
@@ -36,7 +36,7 @@ sap.ui.define([
36
36
  * @implements sap.m.IconTab
37
37
  *
38
38
  * @author SAP SE
39
- * @version 1.102.2
39
+ * @version 1.102.4
40
40
  *
41
41
  * @constructor
42
42
  * @public
@@ -82,7 +82,7 @@ sap.ui.define([
82
82
  * @extends sap.ui.core.Control
83
83
  *
84
84
  * @author SAP SE
85
- * @version 1.102.2
85
+ * @version 1.102.4
86
86
  *
87
87
  * @constructor
88
88
  * @public
@@ -32,7 +32,7 @@ sap.ui.define([
32
32
  * @extends sap.ui.core.Control
33
33
  *
34
34
  * @author SAP SE
35
- * @version 1.102.2
35
+ * @version 1.102.4
36
36
  *
37
37
  * @constructor
38
38
  * @public
@@ -57,7 +57,7 @@ sap.ui.define([
57
57
  * @implements sap.ui.core.IFormContent
58
58
  *
59
59
  * @author SAP SE
60
- * @version 1.102.2
60
+ * @version 1.102.4
61
61
  *
62
62
  * @public
63
63
  * @alias sap.m.Image
@@ -33,7 +33,7 @@ sap.ui.define([
33
33
  * @extends sap.ui.core.Control
34
34
  *
35
35
  * @author SAP SE
36
- * @version 1.102.2
36
+ * @version 1.102.4
37
37
  * @since 1.38
38
38
  *
39
39
  * @public
@@ -150,7 +150,7 @@ function(
150
150
  *
151
151
  * @extends sap.m.InputBase
152
152
  * @author SAP SE
153
- * @version 1.102.2
153
+ * @version 1.102.4
154
154
  *
155
155
  * @constructor
156
156
  * @public
@@ -64,7 +64,7 @@ function(
64
64
  * @implements sap.ui.core.IFormContent
65
65
  *
66
66
  * @author SAP SE
67
- * @version 1.102.2
67
+ * @version 1.102.4
68
68
  *
69
69
  * @constructor
70
70
  * @public
@@ -30,7 +30,7 @@ sap.ui.define([
30
30
  * @extends sap.m.ListItemBase
31
31
  *
32
32
  * @author SAP SE
33
- * @version 1.102.2
33
+ * @version 1.102.4
34
34
  *
35
35
  * @constructor
36
36
  * @public
@@ -76,7 +76,7 @@ function(
76
76
  * @implements sap.ui.core.Label, sap.ui.core.IShrinkable
77
77
  *
78
78
  * @author SAP SE
79
- * @version 1.102.2
79
+ * @version 1.102.4
80
80
  *
81
81
  * @constructor
82
82
  * @public
@@ -99,7 +99,7 @@ sap.ui.define([
99
99
  * @extends sap.ui.core.Control
100
100
  *
101
101
  * @author SAP SE
102
- * @version 1.102.2
102
+ * @version 1.102.4
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.102.2
46
+ * @version 1.102.4
47
47
  *
48
48
  * @constructor
49
49
  * @public
package/src/sap/m/Link.js CHANGED
@@ -42,6 +42,9 @@ function(
42
42
  // shortcut for sap.ui.core.aria.HasPopup
43
43
  var AriaHasPopup = coreLibrary.aria.HasPopup;
44
44
 
45
+ // shortcut for sap.m.LinkAccessibleRole
46
+ var LinkAccessibleRole = library.LinkAccessibleRole;
47
+
45
48
  // shortcut for sap.m.EmptyIndicator
46
49
  var EmptyIndicatorMode = library.EmptyIndicatorMode;
47
50
 
@@ -81,7 +84,7 @@ function(
81
84
  * @implements sap.ui.core.IShrinkable, sap.ui.core.IFormContent, sap.ui.core.ITitleContent
82
85
  *
83
86
  * @author SAP SE
84
- * @version 1.102.2
87
+ * @version 1.102.4
85
88
  *
86
89
  * @constructor
87
90
  * @public
@@ -135,8 +138,9 @@ function(
135
138
  width : {type : "sap.ui.core.CSSSize", group : "Dimension", defaultValue : null},
136
139
 
137
140
  /**
138
- * Defines the link target URI. Supports standard hyperlink behavior. If a JavaScript action should be triggered,
139
- * this should not be set, but instead an event handler for the <code>press</code> event should be registered.
141
+ * Defines the link target URI. Supports standard hyperlink behavior.
142
+ * <b>Note:</b> Don't set <code>href</code> property if an action should be triggered by the link. Instead set <code>accessibleRole</code>
143
+ * property to <code>LinkAccessibleRole.Button</code> and register a <code>press</code> event handler.
140
144
  */
141
145
  href : {type : "sap.ui.core.URI", group : "Data", defaultValue : null},
142
146
 
@@ -194,6 +198,17 @@ function(
194
198
  */
195
199
  ariaHasPopup : {type : "sap.ui.core.aria.HasPopup", group : "Accessibility", defaultValue : AriaHasPopup.None},
196
200
 
201
+ /**
202
+ * Describes the accessibility role of the link:<ul>
203
+ * <li><code>LinkAccessibleRole.Default</code> - a navagation is expected to the location given in <code>href</code> property</li>
204
+ * <li><code>LinkAccessibleRole.Button</code> - there will be <code>role</code> attribute with value "Button" rendered. In this scenario the <code>href</code>
205
+ * property value shouldn't be set as navigation isn't expected to occur.</li></ul>
206
+ *
207
+ * <b>Note:</b> This is a downported feature introduced in version 1.104
208
+ * @since 1.102.2
209
+ */
210
+ accessibleRole : {type : "sap.m.LinkAccessibleRole", group : "Accessibility", defaultValue : LinkAccessibleRole.Default},
211
+
197
212
  /**
198
213
  * Specifies if an empty indicator should be displayed when there is no text.
199
214
  *
@@ -405,7 +420,8 @@ function(
405
420
  sEmphasizedInfo = this.getEmphasized() ? oResourceBundle.getText("LINK_EMPHASIZED") : "",
406
421
  sSubtleInfo = this.getSubtle() ? oResourceBundle.getText("LINK_SUBTLE") : "",
407
422
  sText = this.getText(),
408
- sDescription = sText;
423
+ sDescription = sText,
424
+ sAccessibleRole = this.getAccessibleRole();
409
425
 
410
426
  if (sText) {
411
427
  sEmphasizedInfo && (sDescription += " " + sEmphasizedInfo);
@@ -413,7 +429,7 @@ function(
413
429
  }
414
430
 
415
431
  return {
416
- role: "link",
432
+ role: sAccessibleRole === LinkAccessibleRole.Default ? "link" : sAccessibleRole,
417
433
  type: sText ? oResourceBundle.getText("ACC_CTR_TYPE_LINK") : undefined,
418
434
  description: sDescription,
419
435
  focusable: this.getEnabled(),
@@ -20,6 +20,9 @@
20
20
  // shortcut for sap.ui.core.aria.HasPopup
21
21
  var AriaHasPopup = coreLibrary.aria.HasPopup;
22
22
 
23
+ // shortcut for sap.m.LinkAccessibleRole
24
+ var LinkAccessibleRole = mobileLibrary.LinkAccessibleRole;
25
+
23
26
  /**
24
27
  * Link renderer
25
28
  * @namespace
@@ -48,11 +51,11 @@
48
51
  sHasPopupType = oControl.getAriaHasPopup(),
49
52
  sHref = oControl.getHref(),
50
53
  sRel = defaultLinkTypes(oControl.getRel(), oControl.getTarget()),
54
+ sAccessibleRole = oControl.getAccessibleRole(),
51
55
  oAccAttributes = {
52
56
  labelledby: bShouldHaveOwnLabelledBy ? {value: oControl.getId(), append: true } : undefined,
53
57
  haspopup: (sHasPopupType === AriaHasPopup.None) ? null : sHasPopupType.toLowerCase()
54
58
  },
55
- bIsValid = sHref && oControl._isHrefValid(sHref),
56
59
  bEnabled = oControl.getEnabled(),
57
60
  sTypeSemanticInfo = "";
58
61
 
@@ -70,6 +73,19 @@
70
73
  sTypeSemanticInfo += " " + oControl._sAriaLinkEmphasizedId;
71
74
  }
72
75
 
76
+ switch (sAccessibleRole) {
77
+ case LinkAccessibleRole.Button:
78
+ oAccAttributes.role = LinkAccessibleRole.Button;
79
+ break;
80
+ default:
81
+ // Set a valid non empty value for the href attribute representing that there is no navigation,
82
+ // so we don't confuse the screen readers.
83
+ /*eslint-disable no-script-url */
84
+ sHref = sHref && oControl._isHrefValid(sHref) && oControl.getEnabled() ? sHref : "javascript:void(0)";
85
+ }
86
+
87
+ sHref && oRm.attr("href", sHref);
88
+
73
89
  oAccAttributes.describedby = sTypeSemanticInfo ? {value: sTypeSemanticInfo.trim(), append: true} : undefined;
74
90
 
75
91
  if (!bEnabled) {
@@ -86,14 +102,6 @@
86
102
  oRm.attr("title", oControl.getTooltip_AsString());
87
103
  }
88
104
 
89
- /* set href only if link is enabled - BCP incident 1570020625 */
90
- if (bIsValid && bEnabled) {
91
- oRm.attr("href", sHref);
92
- } else if (oControl.getText()) {
93
- // Add href only if there's text. Otherwise virtual cursor would stop on the empty link. BCP 2070055617
94
- oRm.attr("href", "");
95
- }
96
-
97
105
  if (oControl.getTarget()) {
98
106
  oRm.attr("target", oControl.getTarget());
99
107
  }
package/src/sap/m/List.js CHANGED
@@ -30,7 +30,7 @@ sap.ui.define(["./library", "./ListBase", "./ListRenderer"],
30
30
  * @extends sap.m.ListBase
31
31
  *
32
32
  * @author SAP SE
33
- * @version 1.102.2
33
+ * @version 1.102.4
34
34
  *
35
35
  * @constructor
36
36
  * @public
@@ -90,7 +90,7 @@ function(
90
90
  * @extends sap.ui.core.Control
91
91
  *
92
92
  * @author SAP SE
93
- * @version 1.102.2
93
+ * @version 1.102.4
94
94
  *
95
95
  * @constructor
96
96
  * @public
@@ -624,6 +624,9 @@ function(
624
624
  // Special handling for "AutoExpandSelect" of the V4 ODataModel.
625
625
  if (oEventInfo && oEventInfo.detailedReason === "AddVirtualContext") {
626
626
  createVirtualItem(this);
627
+ if (this._oGrowingDelegate) {
628
+ this._oGrowingDelegate.reset(true);
629
+ }
627
630
  return;
628
631
  } else if (oEventInfo && oEventInfo.detailedReason === "RemoveVirtualContext") {
629
632
  destroyVirtualItem(this);
@@ -76,7 +76,7 @@ function(
76
76
  * @extends sap.ui.core.Control
77
77
  *
78
78
  * @author SAP SE
79
- * @version 1.102.2
79
+ * @version 1.102.4
80
80
  *
81
81
  * @constructor
82
82
  * @public
@@ -26,7 +26,7 @@ sap.ui.define([
26
26
  * Applies mask support for input controls.
27
27
  * It should should be applied to the prototype of a <code>sap.m.InputBase</code>.
28
28
  *
29
- * @version 1.102.2
29
+ * @version 1.102.4
30
30
  * @private
31
31
  * @mixin
32
32
  * @alias sap.m.MaskEnabler
@@ -29,7 +29,7 @@ sap.ui.define(['./InputBase', './MaskEnabler', './MaskInputRenderer'], function(
29
29
  *
30
30
  * @author SAP SE
31
31
  * @extends sap.m.InputBase
32
- * @version 1.102.2
32
+ * @version 1.102.4
33
33
  *
34
34
  * @constructor
35
35
  * @public
@@ -20,7 +20,7 @@ sap.ui.define(['sap/ui/core/Element', "sap/base/Log"], function(Element, Log) {
20
20
  *
21
21
  * @author SAP SE
22
22
  * @extends sap.ui.core.Element
23
- * @version 1.102.2
23
+ * @version 1.102.4
24
24
  * @public
25
25
  * @constructor
26
26
  * @since 1.34.0
package/src/sap/m/Menu.js CHANGED
@@ -68,7 +68,7 @@ sap.ui.define([
68
68
  * @implements sap.ui.core.IContextMenu
69
69
  *
70
70
  * @author SAP SE
71
- * @version 1.102.2
71
+ * @version 1.102.4
72
72
  *
73
73
  * @constructor
74
74
  * @public
@@ -58,7 +58,7 @@ sap.ui.define([
58
58
  * @extends sap.ui.core.Control
59
59
  *
60
60
  * @author SAP SE
61
- * @version 1.102.2
61
+ * @version 1.102.4
62
62
  *
63
63
  * @constructor
64
64
  * @public
@@ -23,7 +23,7 @@ sap.ui.define(['./library', 'sap/ui/core/Item', 'sap/ui/base/ManagedObjectObserv
23
23
  * @extends sap.ui.core.Item
24
24
  *
25
25
  * @author SAP SE
26
- * @version 1.102.2
26
+ * @version 1.102.4
27
27
  *
28
28
  * @constructor
29
29
  * @public
@@ -32,7 +32,7 @@ sap.ui.define([
32
32
  * @extends sap.m.ListItemBase
33
33
  *
34
34
  * @author SAP SE
35
- * @version 1.102.2
35
+ * @version 1.102.4
36
36
  *
37
37
  * @constructor
38
38
  * @private
@@ -37,7 +37,7 @@ sap.ui.define([
37
37
  *
38
38
  * @extends sap.ui.core.Item
39
39
  * @author SAP SE
40
- * @version 1.102.2
40
+ * @version 1.102.4
41
41
  *
42
42
  * @constructor
43
43
  * @public
@@ -30,7 +30,7 @@ sap.ui.define([
30
30
  * @extends sap.m.StandardListItem
31
31
  *
32
32
  * @author SAP SE
33
- * @version 1.102.2
33
+ * @version 1.102.4
34
34
  *
35
35
  * @constructor
36
36
  * @private
@@ -72,7 +72,7 @@ sap.ui.define([
72
72
  * @see {@link fiori:https://experience.sap.com/fiori-design-web/message-page/ Message Page}
73
73
  *
74
74
  * @extends sap.ui.core.Control
75
- * @version 1.102.2
75
+ * @version 1.102.4
76
76
  *
77
77
  * @constructor
78
78
  * @public
@@ -91,7 +91,7 @@ function(
91
91
  * @extends sap.ui.core.Control
92
92
  *
93
93
  * @author SAP SE
94
- * @version 1.102.2
94
+ * @version 1.102.4
95
95
  *
96
96
  * @constructor
97
97
  * @public
@@ -19,7 +19,7 @@ sap.ui.define(["./library", "./MessageItem"],
19
19
  * @extends sap.m.MessageItem
20
20
  *
21
21
  * @author SAP SE
22
- * @version 1.102.2
22
+ * @version 1.102.4
23
23
  *
24
24
  * @constructor
25
25
  * @public
@@ -83,7 +83,7 @@ sap.ui.define([
83
83
  * @extends sap.ui.core.Control
84
84
  *
85
85
  * @author SAP SE
86
- * @version 1.102.2
86
+ * @version 1.102.4
87
87
  *
88
88
  * @constructor
89
89
  * @public
@@ -70,7 +70,7 @@ sap.ui.define([
70
70
  * The message toast has the same behavior on all devices. However, you can adjust the width of the control, for example, for use on a desktop device.
71
71
  *
72
72
  * @author SAP SE
73
- * @version 1.102.2
73
+ * @version 1.102.4
74
74
  *
75
75
  * @namespace
76
76
  * @public