@openui5/sap.m 1.101.0 → 1.102.2

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 (447) hide show
  1. package/THIRDPARTY.txt +1 -1
  2. package/package.json +4 -4
  3. package/src/sap/m/.library +2 -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 +12 -22
  12. package/src/sap/m/Breadcrumbs.js +3 -3
  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 +13 -1
  20. package/src/sap/m/ColorPalettePopover.js +1 -1
  21. package/src/sap/m/Column.js +10 -1
  22. package/src/sap/m/ColumnHeaderPopover.js +1 -1
  23. package/src/sap/m/ColumnListItem.js +1 -1
  24. package/src/sap/m/ColumnListItemRenderer.js +6 -2
  25. package/src/sap/m/ColumnPopoverActionItem.js +1 -1
  26. package/src/sap/m/ColumnPopoverCustomItem.js +1 -1
  27. package/src/sap/m/ColumnPopoverItem.js +1 -1
  28. package/src/sap/m/ColumnPopoverSelectListItem.js +1 -1
  29. package/src/sap/m/ColumnPopoverSortItem.js +1 -1
  30. package/src/sap/m/ComboBox.js +22 -2
  31. package/src/sap/m/ComboBoxBase.js +1 -1
  32. package/src/sap/m/ComboBoxTextField.js +1 -1
  33. package/src/sap/m/CustomDynamicDateOption.js +1 -1
  34. package/src/sap/m/CustomListItem.js +1 -1
  35. package/src/sap/m/CustomTile.js +1 -1
  36. package/src/sap/m/CustomTreeItem.js +1 -1
  37. package/src/sap/m/DatePicker.js +24 -6
  38. package/src/sap/m/DateRangeSelection.js +2 -2
  39. package/src/sap/m/DateTimeField.js +22 -10
  40. package/src/sap/m/DateTimeInput.js +1 -1
  41. package/src/sap/m/DateTimePicker.js +8 -7
  42. package/src/sap/m/Dialog.js +2 -2
  43. package/src/sap/m/DialogRenderer.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 +41 -5
  48. package/src/sap/m/DynamicDateOption.js +1 -1
  49. package/src/sap/m/DynamicDateRange.js +87 -24
  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 +8 -1
  53. package/src/sap/m/FacetFilterItem.js +1 -1
  54. package/src/sap/m/FacetFilterList.js +1 -1
  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 +10 -10
  63. package/src/sap/m/GenericTag.js +1 -1
  64. package/src/sap/m/GenericTile.js +97 -16
  65. package/src/sap/m/GenericTileLineModeRenderer.js +3 -0
  66. package/src/sap/m/GenericTileRenderer.js +96 -60
  67. package/src/sap/m/GroupHeaderListItem.js +1 -1
  68. package/src/sap/m/GrowingEnablement.js +127 -93
  69. package/src/sap/m/GrowingList.js +1 -1
  70. package/src/sap/m/HBox.js +1 -1
  71. package/src/sap/m/HeaderContainer.js +48 -44
  72. package/src/sap/m/HeaderContainerItemNavigator.js +1 -1
  73. package/src/sap/m/IconTabBar.js +2 -2
  74. package/src/sap/m/IconTabBarSelectList.js +1 -1
  75. package/src/sap/m/IconTabFilter.js +1 -1
  76. package/src/sap/m/IconTabFilterExpandButtonBadge.js +1 -1
  77. package/src/sap/m/IconTabHeader.js +1 -1
  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 +1 -1
  81. package/src/sap/m/Image.js +1 -1
  82. package/src/sap/m/ImageContent.js +1 -1
  83. package/src/sap/m/Input.js +1 -1
  84. package/src/sap/m/InputBase.js +5 -5
  85. package/src/sap/m/InputListItem.js +1 -1
  86. package/src/sap/m/Label.js +1 -1
  87. package/src/sap/m/LightBox.js +1 -1
  88. package/src/sap/m/LightBoxItem.js +1 -1
  89. package/src/sap/m/Link.js +1 -1
  90. package/src/sap/m/List.js +1 -1
  91. package/src/sap/m/ListBase.js +17 -16
  92. package/src/sap/m/ListItemBase.js +5 -4
  93. package/src/sap/m/MaskEnabler.js +1 -1
  94. package/src/sap/m/MaskInput.js +1 -1
  95. package/src/sap/m/MaskInputRule.js +1 -1
  96. package/src/sap/m/Menu.js +1 -1
  97. package/src/sap/m/MenuButton.js +1 -1
  98. package/src/sap/m/MenuItem.js +1 -1
  99. package/src/sap/m/MenuListItem.js +1 -1
  100. package/src/sap/m/MessageItem.js +1 -1
  101. package/src/sap/m/MessageListItem.js +1 -1
  102. package/src/sap/m/MessagePage.js +1 -1
  103. package/src/sap/m/MessagePopover.js +1 -1
  104. package/src/sap/m/MessagePopoverItem.js +1 -1
  105. package/src/sap/m/MessageStrip.js +1 -1
  106. package/src/sap/m/MessageToast.js +1 -1
  107. package/src/sap/m/MessageView.js +1 -1
  108. package/src/sap/m/MultiComboBox.js +1 -1
  109. package/src/sap/m/MultiEditField.js +1 -1
  110. package/src/sap/m/MultiInput.js +8 -3
  111. package/src/sap/m/NavContainer.js +1 -1
  112. package/src/sap/m/NewsContent.js +1 -1
  113. package/src/sap/m/NotificationList.js +1 -1
  114. package/src/sap/m/NotificationListBase.js +175 -79
  115. package/src/sap/m/NotificationListGroup.js +1 -2
  116. package/src/sap/m/NotificationListGroupRenderer.js +4 -16
  117. package/src/sap/m/NotificationListItem.js +5 -16
  118. package/src/sap/m/NotificationListItemRenderer.js +0 -1
  119. package/src/sap/m/NumericContent.js +1 -1
  120. package/src/sap/m/NumericInput.js +1 -1
  121. package/src/sap/m/ObjectAttribute.js +1 -1
  122. package/src/sap/m/ObjectAttributeRenderer.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/ObjectMarker.js +1 -1
  127. package/src/sap/m/ObjectNumber.js +1 -1
  128. package/src/sap/m/ObjectStatus.js +1 -1
  129. package/src/sap/m/OverflowToolbar.js +17 -1
  130. package/src/sap/m/OverflowToolbarAssociativePopover.js +1 -1
  131. package/src/sap/m/OverflowToolbarButton.js +1 -1
  132. package/src/sap/m/OverflowToolbarLayoutData.js +1 -1
  133. package/src/sap/m/OverflowToolbarToggleButton.js +1 -1
  134. package/src/sap/m/P13nAnyFilterItem.js +1 -1
  135. package/src/sap/m/P13nColumnsItem.js +1 -1
  136. package/src/sap/m/P13nColumnsPanel.js +1 -1
  137. package/src/sap/m/P13nConditionPanel.js +9 -12
  138. package/src/sap/m/P13nDialog.js +1 -1
  139. package/src/sap/m/P13nDimMeasureItem.js +1 -1
  140. package/src/sap/m/P13nDimMeasurePanel.js +1 -1
  141. package/src/sap/m/P13nFilterItem.js +1 -1
  142. package/src/sap/m/P13nFilterPanel.js +1 -1
  143. package/src/sap/m/P13nGroupItem.js +1 -1
  144. package/src/sap/m/P13nGroupPanel.js +1 -1
  145. package/src/sap/m/P13nItem.js +1 -1
  146. package/src/sap/m/P13nPanel.js +1 -1
  147. package/src/sap/m/P13nSelectionItem.js +1 -1
  148. package/src/sap/m/P13nSelectionPanel.js +1 -1
  149. package/src/sap/m/P13nSortItem.js +1 -1
  150. package/src/sap/m/P13nSortPanel.js +1 -1
  151. package/src/sap/m/PDFViewer.js +2 -2
  152. package/src/sap/m/Page.js +4 -4
  153. package/src/sap/m/PageAccessibleLandmarkInfo.js +1 -1
  154. package/src/sap/m/PagingButton.js +1 -1
  155. package/src/sap/m/Panel.js +1 -1
  156. package/src/sap/m/PlanningCalendar.js +1 -1
  157. package/src/sap/m/PlanningCalendarHeader.js +1 -1
  158. package/src/sap/m/PlanningCalendarLegend.js +1 -1
  159. package/src/sap/m/PlanningCalendarRow.js +1 -1
  160. package/src/sap/m/PlanningCalendarView.js +1 -1
  161. package/src/sap/m/Popover.js +2 -2
  162. package/src/sap/m/ProgressIndicator.js +1 -1
  163. package/src/sap/m/PullToRefresh.js +1 -1
  164. package/src/sap/m/QuickView.js +1 -1
  165. package/src/sap/m/QuickViewBase.js +1 -1
  166. package/src/sap/m/QuickViewCard.js +1 -1
  167. package/src/sap/m/QuickViewGroup.js +1 -1
  168. package/src/sap/m/QuickViewGroupElement.js +1 -1
  169. package/src/sap/m/QuickViewPage.js +1 -1
  170. package/src/sap/m/RadioButton.js +2 -2
  171. package/src/sap/m/RadioButtonGroup.js +1 -1
  172. package/src/sap/m/RangeSlider.js +8 -5
  173. package/src/sap/m/RatingIndicator.js +1 -1
  174. package/src/sap/m/ResponsivePopover.js +1 -1
  175. package/src/sap/m/ResponsiveScale.js +1 -1
  176. package/src/sap/m/ScrollBar.js +1 -1
  177. package/src/sap/m/ScrollContainer.js +1 -1
  178. package/src/sap/m/SearchField.js +1 -1
  179. package/src/sap/m/SegmentedButton.js +5 -3
  180. package/src/sap/m/SegmentedButtonItem.js +1 -1
  181. package/src/sap/m/Select.js +20 -2
  182. package/src/sap/m/SelectDialog.js +13 -17
  183. package/src/sap/m/SelectDialogBase.js +1 -1
  184. package/src/sap/m/SelectList.js +1 -1
  185. package/src/sap/m/SelectionDetails.js +1 -1
  186. package/src/sap/m/SelectionDetailsFacade.js +2 -2
  187. package/src/sap/m/SelectionDetailsItem.js +1 -1
  188. package/src/sap/m/SelectionDetailsItemLine.js +1 -1
  189. package/src/sap/m/Shell.js +1 -1
  190. package/src/sap/m/SimpleFixFlex.js +1 -1
  191. package/src/sap/m/SinglePlanningCalendar.js +1 -1
  192. package/src/sap/m/SinglePlanningCalendarDayView.js +1 -1
  193. package/src/sap/m/SinglePlanningCalendarGrid.js +5 -5
  194. package/src/sap/m/SinglePlanningCalendarMonthGrid.js +1 -1
  195. package/src/sap/m/SinglePlanningCalendarMonthView.js +1 -1
  196. package/src/sap/m/SinglePlanningCalendarView.js +1 -1
  197. package/src/sap/m/SinglePlanningCalendarWeekView.js +1 -1
  198. package/src/sap/m/SinglePlanningCalendarWorkWeekView.js +1 -1
  199. package/src/sap/m/SlideTile.js +1 -1
  200. package/src/sap/m/Slider.js +1 -1
  201. package/src/sap/m/SliderTooltip.js +1 -1
  202. package/src/sap/m/SliderTooltipBase.js +1 -1
  203. package/src/sap/m/SliderTooltipContainer.js +1 -1
  204. package/src/sap/m/SplitApp.js +1 -1
  205. package/src/sap/m/SplitButton.js +1 -1
  206. package/src/sap/m/SplitContainer.js +1 -1
  207. package/src/sap/m/StandardDynamicDateOption.js +12 -10
  208. package/src/sap/m/StandardListItem.js +3 -3
  209. package/src/sap/m/StandardListItemRenderer.js +1 -1
  210. package/src/sap/m/StandardTile.js +1 -1
  211. package/src/sap/m/StandardTreeItem.js +1 -1
  212. package/src/sap/m/StepInput.js +1 -1
  213. package/src/sap/m/SuggestionItem.js +1 -1
  214. package/src/sap/m/SuggestionsPopover.js +1 -1
  215. package/src/sap/m/Switch.js +1 -1
  216. package/src/sap/m/TabContainer.js +1 -1
  217. package/src/sap/m/TabContainerItem.js +1 -1
  218. package/src/sap/m/TabStrip.js +5 -3
  219. package/src/sap/m/TabStripItem.js +1 -1
  220. package/src/sap/m/Table.js +7 -1
  221. package/src/sap/m/TablePersoController.js +1 -1
  222. package/src/sap/m/TablePersoDialog.js +1 -1
  223. package/src/sap/m/TablePersoProvider.js +1 -1
  224. package/src/sap/m/TableRenderer.js +27 -0
  225. package/src/sap/m/TableSelectDialog.js +12 -8
  226. package/src/sap/m/Text.js +1 -1
  227. package/src/sap/m/TextArea.js +1 -1
  228. package/src/sap/m/Tile.js +1 -1
  229. package/src/sap/m/TileContainer.js +1 -1
  230. package/src/sap/m/TileContent.js +25 -14
  231. package/src/sap/m/TileContentRenderer.js +16 -7
  232. package/src/sap/m/TimePicker.js +51 -7
  233. package/src/sap/m/TimePickerClock.js +1 -1
  234. package/src/sap/m/TimePickerClocks.js +1 -1
  235. package/src/sap/m/TimePickerInputs.js +1 -1
  236. package/src/sap/m/TimePickerInternals.js +1 -1
  237. package/src/sap/m/TimePickerSlider.js +1 -1
  238. package/src/sap/m/TimePickerSliders.js +1 -1
  239. package/src/sap/m/Title.js +1 -1
  240. package/src/sap/m/TitlePropagationSupport.js +1 -1
  241. package/src/sap/m/ToggleButton.js +1 -1
  242. package/src/sap/m/Token.js +1 -1
  243. package/src/sap/m/Tokenizer.js +14 -3
  244. package/src/sap/m/Toolbar.js +7 -1
  245. package/src/sap/m/ToolbarLayoutData.js +1 -1
  246. package/src/sap/m/ToolbarSeparator.js +1 -1
  247. package/src/sap/m/ToolbarSpacer.js +1 -1
  248. package/src/sap/m/Tree.js +1 -1
  249. package/src/sap/m/TreeItemBase.js +1 -1
  250. package/src/sap/m/UploadCollection.js +1 -1
  251. package/src/sap/m/UploadCollectionItem.js +2 -1
  252. package/src/sap/m/UploadCollectionParameter.js +2 -1
  253. package/src/sap/m/UploadCollectionToolbarPlaceholder.js +2 -1
  254. package/src/sap/m/VBox.js +1 -1
  255. package/src/sap/m/ValueStateHeader.js +1 -1
  256. package/src/sap/m/VariantManagement.js +2492 -0
  257. package/src/sap/m/ViewSettingsCustomItem.js +1 -1
  258. package/src/sap/m/ViewSettingsCustomTab.js +1 -1
  259. package/src/sap/m/ViewSettingsDialog.js +2 -2
  260. package/src/sap/m/ViewSettingsFilterItem.js +1 -1
  261. package/src/sap/m/ViewSettingsItem.js +1 -1
  262. package/src/sap/m/VisibleItem.js +1 -1
  263. package/src/sap/m/WheelSlider.js +1 -1
  264. package/src/sap/m/WheelSliderContainer.js +1 -1
  265. package/src/sap/m/Wizard.js +1 -1
  266. package/src/sap/m/WizardProgressNavigator.js +1 -2
  267. package/src/sap/m/WizardStep.js +1 -1
  268. package/src/sap/m/changeHandler/AddTableColumn.js +3 -5
  269. package/src/sap/m/changeHandler/ChangeLinkTarget.js +1 -1
  270. package/src/sap/m/changeHandler/CombineButtons.js +1 -1
  271. package/src/sap/m/changeHandler/MoveTableColumns.js +1 -1
  272. package/src/sap/m/changeHandler/SelectIconTabBarFilter.js +1 -1
  273. package/src/sap/m/changeHandler/SplitMenuButton.js +1 -1
  274. package/src/sap/m/designtime/VariantManagement.designtime.js +56 -0
  275. package/src/sap/m/inputUtils/highlightDOMElements.js +3 -2
  276. package/src/sap/m/library.js +45 -2
  277. package/src/sap/m/messagebundle.properties +146 -11
  278. package/src/sap/m/messagebundle_ar.properties +93 -1
  279. package/src/sap/m/messagebundle_bg.properties +93 -1
  280. package/src/sap/m/messagebundle_ca.properties +93 -1
  281. package/src/sap/m/messagebundle_cs.properties +93 -1
  282. package/src/sap/m/messagebundle_cy.properties +93 -1
  283. package/src/sap/m/messagebundle_da.properties +93 -1
  284. package/src/sap/m/messagebundle_de.properties +93 -1
  285. package/src/sap/m/messagebundle_el.properties +93 -1
  286. package/src/sap/m/messagebundle_en.properties +93 -1
  287. package/src/sap/m/messagebundle_en_GB.properties +93 -1
  288. package/src/sap/m/messagebundle_en_US_sappsd.properties +93 -1
  289. package/src/sap/m/messagebundle_en_US_saprigi.properties +93 -1
  290. package/src/sap/m/messagebundle_en_US_saptrc.properties +93 -1
  291. package/src/sap/m/messagebundle_es.properties +93 -1
  292. package/src/sap/m/messagebundle_es_MX.properties +93 -1
  293. package/src/sap/m/messagebundle_et.properties +93 -1
  294. package/src/sap/m/messagebundle_fi.properties +93 -1
  295. package/src/sap/m/messagebundle_fr.properties +94 -2
  296. package/src/sap/m/messagebundle_fr_CA.properties +93 -1
  297. package/src/sap/m/messagebundle_hi.properties +93 -1
  298. package/src/sap/m/messagebundle_hr.properties +93 -1
  299. package/src/sap/m/messagebundle_hu.properties +93 -1
  300. package/src/sap/m/messagebundle_id.properties +93 -1
  301. package/src/sap/m/messagebundle_it.properties +94 -2
  302. package/src/sap/m/messagebundle_iw.properties +93 -1
  303. package/src/sap/m/messagebundle_ja.properties +93 -1
  304. package/src/sap/m/messagebundle_kk.properties +93 -1
  305. package/src/sap/m/messagebundle_ko.properties +93 -1
  306. package/src/sap/m/messagebundle_lt.properties +93 -1
  307. package/src/sap/m/messagebundle_lv.properties +93 -1
  308. package/src/sap/m/messagebundle_ms.properties +93 -1
  309. package/src/sap/m/messagebundle_nl.properties +93 -1
  310. package/src/sap/m/messagebundle_no.properties +93 -1
  311. package/src/sap/m/messagebundle_pl.properties +93 -1
  312. package/src/sap/m/messagebundle_pt.properties +101 -9
  313. package/src/sap/m/messagebundle_pt_PT.properties +93 -1
  314. package/src/sap/m/messagebundle_ro.properties +93 -1
  315. package/src/sap/m/messagebundle_ru.properties +93 -1
  316. package/src/sap/m/messagebundle_sh.properties +93 -1
  317. package/src/sap/m/messagebundle_sk.properties +93 -1
  318. package/src/sap/m/messagebundle_sl.properties +93 -1
  319. package/src/sap/m/messagebundle_sv.properties +93 -1
  320. package/src/sap/m/messagebundle_th.properties +93 -1
  321. package/src/sap/m/messagebundle_tr.properties +93 -1
  322. package/src/sap/m/messagebundle_uk.properties +93 -1
  323. package/src/sap/m/messagebundle_vi.properties +93 -1
  324. package/src/sap/m/messagebundle_zh_CN.properties +93 -1
  325. package/src/sap/m/messagebundle_zh_TW.properties +93 -1
  326. package/src/sap/m/p13n/AbstractContainer.js +2 -2
  327. package/src/sap/m/p13n/AbstractContainerItem.js +2 -2
  328. package/src/sap/m/p13n/BasePanel.js +1 -1
  329. package/src/sap/m/p13n/Container.js +1 -1
  330. package/src/sap/m/p13n/GroupPanel.js +16 -5
  331. package/src/sap/m/p13n/Popup.js +1 -1
  332. package/src/sap/m/p13n/QueryPanel.js +55 -33
  333. package/src/sap/m/p13n/SelectionPanel.js +31 -6
  334. package/src/sap/m/p13n/SortPanel.js +24 -13
  335. package/src/sap/m/plugins/ColumnResizer.js +12 -6
  336. package/src/sap/m/plugins/DataStateIndicator.js +3 -2
  337. package/src/sap/m/plugins/PasteProvider.js +1 -1
  338. package/src/sap/m/plugins/PluginBase.js +1 -1
  339. package/src/sap/m/rules/CheckBox.support.js +1 -1
  340. package/src/sap/m/rules/Image.support.js +1 -1
  341. package/src/sap/m/rules/Link.support.js +1 -1
  342. package/src/sap/m/rules/MessagePage.support.js +1 -1
  343. package/src/sap/m/rules/ObjectHeader.support.js +6 -6
  344. package/src/sap/m/rules/ObjectListItem.support.js +1 -1
  345. package/src/sap/m/rules/ObjectMarker.support.js +1 -1
  346. package/src/sap/m/rules/ObjectStatus.support.js +1 -1
  347. package/src/sap/m/rules/Select.support.js +1 -1
  348. package/src/sap/m/rules/Table.support.js +3 -3
  349. package/src/sap/m/semantic/AddAction.js +1 -1
  350. package/src/sap/m/semantic/CancelAction.js +1 -1
  351. package/src/sap/m/semantic/DeleteAction.js +1 -1
  352. package/src/sap/m/semantic/DetailPage.js +1 -1
  353. package/src/sap/m/semantic/DiscussInJamAction.js +1 -1
  354. package/src/sap/m/semantic/EditAction.js +1 -1
  355. package/src/sap/m/semantic/FavoriteAction.js +1 -1
  356. package/src/sap/m/semantic/FilterAction.js +1 -1
  357. package/src/sap/m/semantic/FilterSelect.js +1 -1
  358. package/src/sap/m/semantic/FlagAction.js +1 -1
  359. package/src/sap/m/semantic/ForwardAction.js +1 -1
  360. package/src/sap/m/semantic/FullscreenPage.js +1 -1
  361. package/src/sap/m/semantic/GroupAction.js +1 -1
  362. package/src/sap/m/semantic/GroupSelect.js +1 -1
  363. package/src/sap/m/semantic/MainAction.js +1 -1
  364. package/src/sap/m/semantic/MasterPage.js +1 -1
  365. package/src/sap/m/semantic/MessagesIndicator.js +1 -1
  366. package/src/sap/m/semantic/MultiSelectAction.js +1 -1
  367. package/src/sap/m/semantic/NegativeAction.js +1 -1
  368. package/src/sap/m/semantic/OpenInAction.js +1 -1
  369. package/src/sap/m/semantic/PositiveAction.js +1 -1
  370. package/src/sap/m/semantic/PrintAction.js +1 -1
  371. package/src/sap/m/semantic/SaveAction.js +1 -1
  372. package/src/sap/m/semantic/Segment.js +1 -1
  373. package/src/sap/m/semantic/SegmentedContainer.js +1 -1
  374. package/src/sap/m/semantic/SemanticButton.js +1 -1
  375. package/src/sap/m/semantic/SemanticConfiguration.js +1 -1
  376. package/src/sap/m/semantic/SemanticControl.js +1 -1
  377. package/src/sap/m/semantic/SemanticOverflowToolbarButton.js +1 -1
  378. package/src/sap/m/semantic/SemanticOverflowToolbarToggleButton.js +1 -1
  379. package/src/sap/m/semantic/SemanticPage.js +1 -1
  380. package/src/sap/m/semantic/SemanticSelect.js +1 -1
  381. package/src/sap/m/semantic/SemanticToggleButton.js +1 -1
  382. package/src/sap/m/semantic/SendEmailAction.js +1 -1
  383. package/src/sap/m/semantic/SendMessageAction.js +1 -1
  384. package/src/sap/m/semantic/ShareInJamAction.js +1 -1
  385. package/src/sap/m/semantic/ShareMenu.js +1 -1
  386. package/src/sap/m/semantic/ShareMenuPage.js +1 -1
  387. package/src/sap/m/semantic/SortAction.js +1 -1
  388. package/src/sap/m/semantic/SortSelect.js +1 -1
  389. package/src/sap/m/table/Util.js +17 -13
  390. package/src/sap/m/table/columnmenu/ActionItem.js +1 -1
  391. package/src/sap/m/table/columnmenu/Entry.js +1 -11
  392. package/src/sap/m/table/columnmenu/Item.js +1 -1
  393. package/src/sap/m/table/columnmenu/ItemBase.js +11 -1
  394. package/src/sap/m/table/columnmenu/Menu.js +40 -26
  395. package/src/sap/m/table/columnmenu/MenuRenderer.js +4 -3
  396. package/src/sap/m/table/columnmenu/QuickAction.js +1 -1
  397. package/src/sap/m/table/columnmenu/QuickActionBase.js +11 -1
  398. package/src/sap/m/table/columnmenu/QuickActionItem.js +5 -5
  399. package/src/sap/m/table/columnmenu/QuickGroup.js +2 -11
  400. package/src/sap/m/table/columnmenu/QuickGroupItem.js +1 -13
  401. package/src/sap/m/table/columnmenu/QuickSort.js +2 -1
  402. package/src/sap/m/table/columnmenu/QuickSortItem.js +1 -1
  403. package/src/sap/m/table/columnmenu/QuickTotal.js +2 -22
  404. package/src/sap/m/table/columnmenu/QuickTotalItem.js +1 -13
  405. package/src/sap/m/themes/base/ActionListItem.less +1 -1
  406. package/src/sap/m/themes/base/Button.less +1 -6
  407. package/src/sap/m/themes/base/Carousel.less +72 -87
  408. package/src/sap/m/themes/base/ColumnListItem.less +0 -3
  409. package/src/sap/m/themes/base/Dialog.less +6 -0
  410. package/src/sap/m/themes/base/GenericTile.less +438 -148
  411. package/src/sap/m/themes/base/IconTabBarSelectList.less +5 -4
  412. package/src/sap/m/themes/base/InputBase.less +2 -1
  413. package/src/sap/m/themes/base/LightBox.less +9 -7
  414. package/src/sap/m/themes/base/ListItemBase.less +1 -12
  415. package/src/sap/m/themes/base/MenuButton.less +16 -0
  416. package/src/sap/m/themes/base/MessageBox.less +5 -5
  417. package/src/sap/m/themes/base/NewsContent.less +0 -9
  418. package/src/sap/m/themes/base/NotificationListBase.less +9 -14
  419. package/src/sap/m/themes/base/NotificationListGroup.less +30 -44
  420. package/src/sap/m/themes/base/NotificationListItem.less +14 -18
  421. package/src/sap/m/themes/base/ObjectListItem.less +3 -0
  422. package/src/sap/m/themes/base/ObjectStatus.less +3 -0
  423. package/src/sap/m/themes/base/Panel.less +1 -1
  424. package/src/sap/m/themes/base/Popover.less +1 -1
  425. package/src/sap/m/themes/base/QuickView.less +14 -2
  426. package/src/sap/m/themes/base/RatingIndicator.less +4 -0
  427. package/src/sap/m/themes/base/SinglePlanningCalendarGrid.less +3 -29
  428. package/src/sap/m/themes/base/SlideTile.less +34 -0
  429. package/src/sap/m/themes/base/Slider.less +18 -18
  430. package/src/sap/m/themes/base/StandardListItem.less +5 -9
  431. package/src/sap/m/themes/base/Table.less +22 -21
  432. package/src/sap/m/themes/base/TextArea.less +5 -0
  433. package/src/sap/m/themes/base/TileContent.less +17 -0
  434. package/src/sap/m/themes/base/Token.less +3 -2
  435. package/src/sap/m/themes/base/Toolbar.less +1 -1
  436. package/src/sap/m/themes/base/UploadCollection.less +2 -0
  437. package/src/sap/m/themes/base/VariantManagement.less +97 -0
  438. package/src/sap/m/themes/base/Wizard.less +5 -4
  439. package/src/sap/m/themes/base/WizardProgressNavigator.less +8 -0
  440. package/src/sap/m/themes/base/library.source.less +1 -0
  441. package/src/sap/m/themes/sap_hcb/Carousel.less +3 -7
  442. package/src/sap/m/themes/sap_hcb/Panel.less +4 -0
  443. package/src/sap/m/themes/sap_hcb/Slider.less +11 -0
  444. package/src/sap/m/themes/sap_hcb/Tokenizer.less +1 -0
  445. package/src/sap/m/upload/UploadSet.js +89 -13
  446. package/src/sap/m/upload/UploadSetItem.js +15 -2
  447. package/src/sap/m/upload/UploadSetToolbarPlaceholder.js +45 -0
@@ -19,7 +19,7 @@ sap.ui.define(['sap/m/semantic/SemanticButton'], function(SemanticButton) {
19
19
  * @extends sap.m.semantic.SemanticButton
20
20
  *
21
21
  * @author SAP SE
22
- * @version 1.101.0
22
+ * @version 1.102.2
23
23
  *
24
24
  * @constructor
25
25
  * @public
@@ -19,7 +19,7 @@ sap.ui.define(['sap/m/semantic/SemanticButton'], function(SemanticButton) {
19
19
  * @extends sap.m.semantic.SemanticButton
20
20
  *
21
21
  * @author SAP SE
22
- * @version 1.101.0
22
+ * @version 1.102.2
23
23
  *
24
24
  * @constructor
25
25
  * @public
@@ -19,7 +19,7 @@ sap.ui.define(['sap/ui/base/Object', "sap/base/Log"], function(BaseObject, Log)
19
19
  * Constructor for an sap.m.semantic.Segment.
20
20
  *
21
21
  * @class Abstraction for a segment in a SegmentedContainer
22
- * @version 1.101.0
22
+ * @version 1.102.2
23
23
  * @private
24
24
  * @since 1.30.0
25
25
  * @alias sap.m.semantic.Segment
@@ -20,7 +20,7 @@ sap.ui.define(['sap/m/semantic/Segment', 'sap/ui/base/Object', "sap/base/Log"],
20
20
  * Constructor for an sap.m.semantic.SegmentedContainer.
21
21
  *
22
22
  * @class text
23
- * @version 1.101.0
23
+ * @version 1.102.2
24
24
  * @private
25
25
  * @since 1.30.0
26
26
  * @alias sap.m.semantic.SegmentedContainer
@@ -25,7 +25,7 @@ sap.ui.define([
25
25
  * @abstract
26
26
  *
27
27
  * @author SAP SE
28
- * @version 1.101.0
28
+ * @version 1.102.2
29
29
  *
30
30
  * @constructor
31
31
  * @public
@@ -36,7 +36,7 @@ sap.ui.define([
36
36
  * Constructor for an sap.m.semantic.SemanticConfiguration.
37
37
  *
38
38
  * @class Defines the visual properties and positioning for each supported semantic type
39
- * @version 1.101.0
39
+ * @version 1.102.2
40
40
  * @private
41
41
  * @since 1.30.0
42
42
  * @alias sap.m.semantic.SemanticConfiguration
@@ -25,7 +25,7 @@ sap.ui.define([
25
25
  * @abstract
26
26
  *
27
27
  * @author SAP SE
28
- * @version 1.101.0
28
+ * @version 1.102.2
29
29
  *
30
30
  * @constructor
31
31
  * @public
@@ -22,7 +22,7 @@ sap.ui.define(['sap/m/OverflowToolbarButton', 'sap/m/ButtonRenderer'],
22
22
  * @extends sap.m.OverflowToolbarButton
23
23
  *
24
24
  * @author SAP SE
25
- * @version 1.101.0
25
+ * @version 1.102.2
26
26
  *
27
27
  * @constructor
28
28
  * @private
@@ -22,7 +22,7 @@ sap.ui.define(["sap/m/OverflowToolbarToggleButton", "sap/m/ToggleButtonRenderer"
22
22
  * @extends sap.m.OverflowToolbarToggleButton
23
23
  *
24
24
  * @author SAP SE
25
- * @version 1.101.0
25
+ * @version 1.102.2
26
26
  *
27
27
  * @constructor
28
28
  * @private
@@ -109,7 +109,7 @@ function(
109
109
  * @abstract
110
110
  *
111
111
  * @author SAP SE
112
- * @version 1.101.0
112
+ * @version 1.102.2
113
113
  *
114
114
  * @constructor
115
115
  * @public
@@ -19,7 +19,7 @@ sap.ui.define(['sap/m/semantic/SemanticControl', 'sap/m/Select', "sap/base/Log"]
19
19
  * @abstract
20
20
  *
21
21
  * @author SAP SE
22
- * @version 1.101.0
22
+ * @version 1.102.2
23
23
  *
24
24
  * @constructor
25
25
  * @public
@@ -29,7 +29,7 @@ sap.ui.define([
29
29
  * @abstract
30
30
  *
31
31
  * @author SAP SE
32
- * @version 1.101.0
32
+ * @version 1.102.2
33
33
  *
34
34
  * @constructor
35
35
  * @public
@@ -19,7 +19,7 @@ sap.ui.define(['sap/m/semantic/SemanticButton'], function(SemanticButton) {
19
19
  * @extends sap.m.semantic.SemanticButton
20
20
  *
21
21
  * @author SAP SE
22
- * @version 1.101.0
22
+ * @version 1.102.2
23
23
  *
24
24
  * @constructor
25
25
  * @public
@@ -19,7 +19,7 @@ sap.ui.define(['sap/m/semantic/SemanticButton'], function(SemanticButton) {
19
19
  * @extends sap.m.semantic.SemanticButton
20
20
  *
21
21
  * @author SAP SE
22
- * @version 1.101.0
22
+ * @version 1.102.2
23
23
  *
24
24
  * @constructor
25
25
  * @public
@@ -19,7 +19,7 @@ sap.ui.define(['sap/m/semantic/SemanticButton'], function(SemanticButton) {
19
19
  * @extends sap.m.semantic.SemanticButton
20
20
  *
21
21
  * @author SAP SE
22
- * @version 1.101.0
22
+ * @version 1.102.2
23
23
  *
24
24
  * @constructor
25
25
  * @public
@@ -48,7 +48,7 @@ sap.ui.define([
48
48
  * ShareMenu is a special menu that is represented by (1) an actionSheet with the menu items and (2) a button that opens the actionSheet.
49
49
  * If the menu has only one item, then that item appears in place of the button that opens the actionSheet.
50
50
  *
51
- * @version 1.101.0
51
+ * @version 1.102.2
52
52
  * @private
53
53
  * @since 1.30.0
54
54
  * @alias sap.m.semantic.ShareMenu
@@ -22,7 +22,7 @@ sap.ui.define(["sap/m/semantic/SemanticPage", "sap/m/semantic/SemanticConfigurat
22
22
  * @extends sap.m.semantic.SemanticPage
23
23
  *
24
24
  * @author SAP SE
25
- * @version 1.101.0
25
+ * @version 1.102.2
26
26
  *
27
27
  * @constructor
28
28
  * @public
@@ -25,7 +25,7 @@ sap.ui.define(['sap/m/semantic/SemanticButton'], function(SemanticButton) {
25
25
  * @implements sap.m.semantic.ISort
26
26
  *
27
27
  * @author SAP SE
28
- * @version 1.101.0
28
+ * @version 1.102.2
29
29
  *
30
30
  * @constructor
31
31
  * @public
@@ -24,7 +24,7 @@ sap.ui.define(['sap/m/semantic/SemanticSelect'], function(SemanticSelect) {
24
24
  * @implements sap.m.semantic.ISort
25
25
  *
26
26
  * @author SAP SE
27
- * @version 1.101.0
27
+ * @version 1.102.2
28
28
  *
29
29
  * @constructor
30
30
  * @public
@@ -18,7 +18,7 @@ sap.ui.define([
18
18
  * @namespace
19
19
  * @alias module:sap/m/table/Util
20
20
  * @author SAP SE
21
- * @version 1.101.0
21
+ * @version 1.102.2
22
22
  * @since 1.96.0
23
23
  * @private
24
24
  * @experimental Since 1.96.0. This class is experimental and the API might be changed in future.
@@ -64,6 +64,7 @@ sap.ui.define([
64
64
  * @param {object} [mSettings] The settings object
65
65
  * @param {int} [mSettings.maxWidth=19] The maximum content width of the field in rem
66
66
  * @param {int} [mSettings.defaultWidth=8] The default column content width when type check fails
67
+ * @param {float} [mSettings.gap=0] The additional content width in rem
67
68
  * @returns {float} The calculated width of the ODataType converted to rem
68
69
  * @private
69
70
  */
@@ -78,6 +79,11 @@ sap.ui.define([
78
79
  return function(oType, mSettings) {
79
80
 
80
81
  var sType = oType.getMetadata().getName().split(".").pop();
82
+ var iMaxWidth = mSettings && mSettings.maxWidth || 19;
83
+ var iGap = mSettings && mSettings.gap || 0;
84
+ var applySettings = function(fCalculatedWidth) {
85
+ return Math.min(fCalculatedWidth + iGap, iMaxWidth);
86
+ };
81
87
 
82
88
  if (sType == "Boolean") {
83
89
  if (!fBooleanWidth) {
@@ -86,17 +92,12 @@ sap.ui.define([
86
92
  var fNoWidth = Util.measureText(oResourceBundle.getText("NO"));
87
93
  fBooleanWidth = Math.max(fYesWidth, fNoWidth);
88
94
  }
89
- return fBooleanWidth;
95
+ return applySettings(fBooleanWidth);
90
96
  }
91
97
 
92
98
  if (sType == "String" || oType.isA("sap.ui.model.odata.type.String")) {
93
- var iMaxWidth = mSettings && mSettings.maxWidth || 19;
94
99
  var iMaxLength = parseInt(oType.getConstraints().maxLength) || 0;
95
-
96
- if (!iMaxLength) {
97
- return Math.max(Math.min(10, iMaxWidth), iMaxWidth * 0.75);
98
- }
99
- if (iMaxLength * 0.25 > iMaxWidth) {
100
+ if (!iMaxLength || iMaxLength * 0.25 > iMaxWidth) {
100
101
  return iMaxWidth;
101
102
  }
102
103
 
@@ -106,7 +107,7 @@ sap.ui.define([
106
107
  }
107
108
 
108
109
  var fWidth = Math.log(fSampleWidth - iMaxWidth * 0.16) / Math.log(iMaxWidth / 3) * (iMaxWidth / 2) * Math.pow(iMaxWidth / 19, 1 / fSampleWidth);
109
- return Math.min(fWidth, fSampleWidth, iMaxWidth);
110
+ return applySettings(Math.min(fWidth, fSampleWidth));
110
111
  }
111
112
 
112
113
  if (sType.startsWith("Date") || sType.startsWith("Time")) {
@@ -125,7 +126,7 @@ sap.ui.define([
125
126
  sSample += (sWideFormat.length == 4 ? "---" : "-");
126
127
  });
127
128
  }
128
- return Util.measureText(sSample);
129
+ return applySettings(Util.measureText(sSample));
129
130
  }
130
131
 
131
132
  if (mNumericLimits[sType]) {
@@ -134,7 +135,7 @@ sap.ui.define([
134
135
  iPrecision = Math.min(iPrecision, mNumericLimits[sType]);
135
136
  var sNumber = 2 * Math.pow(10, iPrecision - iScale - 1);
136
137
  sNumber = oType.formatValue(sNumber, "string");
137
- return Util.measureText(sNumber);
138
+ return applySettings(Util.measureText(sNumber));
138
139
  }
139
140
 
140
141
  return mSettings && mSettings.defaultWidth || 8;
@@ -228,13 +229,16 @@ sap.ui.define([
228
229
  var iMaxWidth = Math.max(iMinWidth, mSettings.maxWidth);
229
230
 
230
231
  var fContentWidth = mSettings.gap + vTypes.reduce(function(fInnerWidth, vType) {
231
- var oType = vType, oTypeSettings = mSettings;
232
+ var oType = vType, oTypeSettings = {
233
+ defaultWidth: mSettings.defaultWidth,
234
+ maxWidth: mSettings.maxWidth
235
+ };
232
236
 
233
237
  if (Array.isArray(vType)) {
234
238
  // for internal usage (mdc/Table) every field can provide own width settings
235
239
  // in this case we get [<TypeInstance>, <TypeSettings>][] instead of <TypeInstance>[]
236
240
  oType = vType[0];
237
- oTypeSettings = vType[1] || mSettings;
241
+ oTypeSettings = vType[1] || oTypeSettings;
238
242
  }
239
243
 
240
244
  var fTypeWidth = Util.calcTypeWidth(oType, oTypeSettings);
@@ -23,7 +23,7 @@ sap.ui.define([
23
23
  * @extends sap.m.table.columnmenu.ItemBase
24
24
  *
25
25
  * @author SAP SE
26
- * @version 1.101.0
26
+ * @version 1.102.2
27
27
  *
28
28
  * @private
29
29
  * @experimental
@@ -23,7 +23,7 @@ sap.ui.define([
23
23
  * @extends sap.ui.core.Element
24
24
  *
25
25
  * @author SAP SE
26
- * @version 1.101.0
26
+ * @version 1.102.2
27
27
  *
28
28
  * @private
29
29
  * @experimental
@@ -87,15 +87,5 @@ sap.ui.define([
87
87
  throw new Error(this + " does not implement #getContent");
88
88
  };
89
89
 
90
- Entry.prototype.setVisible = function (bVisible) {
91
- if (this.getVisible() == bVisible) {
92
- return this;
93
- }
94
-
95
- this.setProperty("visible", bVisible);
96
- this.getMenu() && this.getMenu()._setItemVisibility(this, bVisible);
97
- return this;
98
- };
99
-
100
90
  return Entry;
101
91
  });
@@ -23,7 +23,7 @@ sap.ui.define([
23
23
  * @extends sap.m.table.columnmenu.ItemBase
24
24
  *
25
25
  * @author SAP SE
26
- * @version 1.101.0
26
+ * @version 1.102.2
27
27
  *
28
28
  * @private
29
29
  * @experimental
@@ -23,7 +23,7 @@ sap.ui.define([
23
23
  * @extends sap.m.table.columnmenu.Entry
24
24
  *
25
25
  * @author SAP SE
26
- * @version 1.101.0
26
+ * @version 1.102.2
27
27
  *
28
28
  * @private
29
29
  * @experimental
@@ -148,5 +148,15 @@ sap.ui.define([
148
148
  this.getMenu() && this.getMenu()._updateButtonState(this);
149
149
  };
150
150
 
151
+ ItemBase.prototype.setVisible = function (bVisible) {
152
+ if (this.getVisible() == bVisible) {
153
+ return this;
154
+ }
155
+
156
+ this.setProperty("visible", bVisible);
157
+ this.getMenu() && this.getMenu()._setItemVisibility(this, bVisible);
158
+ return this;
159
+ };
160
+
151
161
  return ItemBase;
152
162
  });
@@ -75,7 +75,7 @@ sap.ui.define([
75
75
  * @extends sap.ui.core.Control
76
76
  *
77
77
  * @author SAP SE
78
- * @version 1.101.0
78
+ * @version 1.102.2
79
79
  *
80
80
  * @private
81
81
  * @experimental
@@ -149,10 +149,14 @@ sap.ui.define([
149
149
  this._initPopover();
150
150
  this._createQuickActionGrids();
151
151
 
152
- if (!this._oItemsContainer) {
153
- this._initItemsContainer();
152
+ if (this._oItemsContainer) {
153
+ this._oItemsContainer.destroy();
154
+ this._oItemsContainer = null;
154
155
  }
156
+ this._initItemsContainer();
157
+
155
158
  this._oPopover.openBy(oAnchor);
159
+ ControlEvents.bindAnyEvent(this.fAnyEventHandlerProxy);
156
160
  };
157
161
 
158
162
  /**
@@ -176,6 +180,7 @@ sap.ui.define([
176
180
  if (this._oPopover) {
177
181
  this._oPopover.close();
178
182
  }
183
+ ControlEvents.unbindAnyEvent(this.fAnyEventHandlerProxy);
179
184
  };
180
185
 
181
186
  Menu.prototype.exit = function () {
@@ -250,10 +255,9 @@ sap.ui.define([
250
255
  return;
251
256
  }
252
257
 
253
- if (!isInMenuHierarchy) {
254
- if (containsOrEquals(this.getDomRef(), oEvent.target)) {
255
- isInMenuHierarchy = true;
256
- }
258
+ if (containsOrEquals(this.getDomRef(), oEvent.target) || containsOrEquals(Core.getStaticAreaRef(), oEvent.target) ||
259
+ isInControlTree(this, Core.byId(oEvent.target.id))) {
260
+ isInMenuHierarchy = true;
257
261
  }
258
262
  } else if (oEvent.type == "sapfocusleave") {
259
263
  if (touchEnabled) {
@@ -261,11 +265,9 @@ sap.ui.define([
261
265
  }
262
266
 
263
267
  if (oEvent.relatedControlId) {
264
- if (!isInMenuHierarchy) {
265
- if (containsOrEquals(this.getDomRef(), jQuery(document.getElementById(oEvent.relatedControlId)).get(0)) ||
266
- isInControlTree(this, Core.byId(oEvent.relatedControlId))) {
267
- isInMenuHierarchy = true;
268
- }
268
+ if (containsOrEquals(this.getDomRef(), jQuery(document.getElementById(oEvent.relatedControlId)).get(0)) ||
269
+ isInControlTree(this, Core.byId(oEvent.relatedControlId))) {
270
+ isInMenuHierarchy = true;
269
271
  }
270
272
  }
271
273
  }
@@ -286,24 +288,20 @@ sap.ui.define([
286
288
  }
287
289
 
288
290
  Menu.prototype._initItemsContainer = function () {
289
- var aControlMenuItems = (this.getAggregation("_items") || []).reduce(function (aItems, oItem) {
290
- return aItems.concat(oItem.getEffectiveItems());
291
- }, []);
292
- var aApplicationMenuItems = this.getItems().reduce(function (aItems, oItem) {
293
- return aItems.concat(oItem.getEffectiveItems());
294
- }, []);
291
+ var aMenuItems = this._getAllEffectiveItems();
292
+ var bHasQuickActions = this._hasQuickActions();
293
+ var bHasitems = this._hasItems();
295
294
 
296
295
  if (!this._oItemsContainer) {
297
296
  this._createItemsContainer();
298
297
  }
299
298
 
300
- aControlMenuItems.forEach(function (oColumnMenuItem, iIndex) {
301
- this._addView(oColumnMenuItem);
302
- iIndex === 0 && this._oItemsContainer.addSeparator();
303
- }.bind(this));
304
- aApplicationMenuItems.forEach(function (oColumnMenuItem, iIndex) {
299
+ aMenuItems.forEach(function (oColumnMenuItem, iIndex) {
305
300
  this._addView(oColumnMenuItem);
306
- iIndex === 0 && this._oItemsContainer.addSeparator();
301
+
302
+ if (bHasQuickActions && bHasitems && iIndex === 0) {
303
+ this._oItemsContainer.addSeparator();
304
+ }
307
305
  }.bind(this));
308
306
  };
309
307
 
@@ -358,6 +356,7 @@ sap.ui.define([
358
356
  });
359
357
  this._oBtnOk = new Button({
360
358
  text: this._getResourceText("table.COLUMNMENU_CONFIRM"),
359
+ type: library.ButtonType.Emphasized,
361
360
  press: function () {
362
361
  var sKey = oMenu._oItemsContainer.getCurrentViewKey();
363
362
  if (oMenu._fireEvent(Core.byId(sKey), "confirm")) {
@@ -436,14 +435,26 @@ sap.ui.define([
436
435
  var aQuickActions = (this.getAggregation("_quickActions") || []).concat(this.getQuickActions());
437
436
  return aQuickActions.reduce(function (a, oQuickAction) {
438
437
  return a.concat(oQuickAction.getEffectiveQuickActions());
439
- }, []);
438
+ }, []).filter(function (oQuickAction) {
439
+ return oQuickAction.getVisible();
440
+ });
441
+ };
442
+
443
+ Menu.prototype._hasQuickActions = function() {
444
+ return this._getAllEffectiveQuickActions().length > 0;
440
445
  };
441
446
 
442
447
  Menu.prototype._getAllEffectiveItems = function() {
443
448
  var aItems = (this.getAggregation("_items") || []).concat(this.getItems());
444
449
  return aItems.reduce(function(a, oItem) {
445
450
  return a.concat(oItem.getEffectiveItems());
446
- }, []);
451
+ }, []).filter(function (oItem) {
452
+ return oItem.getVisible();
453
+ });
454
+ };
455
+
456
+ Menu.prototype._hasItems = function() {
457
+ return this._getAllEffectiveItems().length > 0;
447
458
  };
448
459
 
449
460
  Menu.prototype._getItemFromContainerItem = function (oContainerItem) {
@@ -520,6 +531,9 @@ sap.ui.define([
520
531
 
521
532
  var aEffectiveQuickActions = this._getAllEffectiveQuickActions();
522
533
  aEffectiveQuickActions.forEach(function (oEffectiveQuickAction) {
534
+ if (!oEffectiveQuickAction.getVisible()) {
535
+ return;
536
+ }
523
537
  // Create label
524
538
  var oGridData = new GridData({span: "XL4 L4 M4 S12"});
525
539
  var oLabel = new Label({
@@ -20,11 +20,12 @@ sap.ui.define([], function () {
20
20
  };
21
21
 
22
22
  MenuRenderer.renderQuickActions = function (oRm, oMenu) {
23
- if (oMenu.getQuickActions().length === 0 && !oMenu.getAggregation("_quickActions")) {
23
+ // If no active QuickActions are found, do not render the quick action container.
24
+ if (oMenu._getAllEffectiveQuickActions().length === 0) {
24
25
  return;
25
26
  }
26
27
 
27
- oRm.openStart("div", oMenu.getId() + "-quickActions");
28
+ oRm.openStart("div");
28
29
  if (oMenu._oItemsContainer) {
29
30
  if (oMenu._oItemsContainer.getCurrentViewKey() === "$default") {
30
31
  oRm.class("sapMTCMenuQAList");
@@ -42,7 +43,7 @@ sap.ui.define([], function () {
42
43
  };
43
44
 
44
45
  MenuRenderer.renderItems = function (oRm, oMenu) {
45
- if (oMenu.getItems().length === 0 && !oMenu.getAggregation("_items")) {
46
+ if (oMenu._getAllEffectiveItems().length === 0) {
46
47
  return;
47
48
  }
48
49
 
@@ -24,7 +24,7 @@ sap.ui.define([
24
24
  * @extends sap.m.table.columnmenu.QuickActionBase
25
25
  *
26
26
  * @author SAP SE
27
- * @version 1.101.0
27
+ * @version 1.102.2
28
28
  *
29
29
  * @private
30
30
  * @since 1.99
@@ -23,7 +23,7 @@ sap.ui.define([
23
23
  * @extends sap.m.table.columnmenu.Entry
24
24
  *
25
25
  * @author SAP SE
26
- * @version 1.101.0
26
+ * @version 1.102.2
27
27
  *
28
28
  * @private
29
29
  * @experimental
@@ -50,5 +50,15 @@ sap.ui.define([
50
50
  return [this];
51
51
  };
52
52
 
53
+ QuickActionBase.prototype.setVisible = function (bVisible) {
54
+ if (this.getVisible() == bVisible) {
55
+ return this;
56
+ }
57
+
58
+ this.setProperty("visible", bVisible);
59
+ this.getMenu() && this.getMenu()._createQuickActionGrids();
60
+ return this;
61
+ };
62
+
53
63
  return QuickActionBase;
54
64
  });
@@ -5,9 +5,9 @@
5
5
  */
6
6
 
7
7
  sap.ui.define([
8
- "sap/ui/core/Element"
8
+ "sap/m/table/columnmenu/Entry"
9
9
  ], function (
10
- Element
10
+ Entry
11
11
  ) {
12
12
  "use strict";
13
13
 
@@ -21,17 +21,17 @@ sap.ui.define([
21
21
  * This element serves as a quick action item.
22
22
  * It can be used to specify control- and application specific quick action items.
23
23
  *
24
- * @extends sap.ui.core.Element
24
+ * @extends sap.m.table.columnmenu.Entry
25
25
  *
26
26
  * @author SAP SE
27
- * @version 1.101.0
27
+ * @version 1.102.2
28
28
  *
29
29
  * @private
30
30
  * @experimental
31
31
  *
32
32
  * @alias sap.m.table.columnmenu.QuickActionItem
33
33
  */
34
- var QuickActionItem = Element.extend("sap.m.table.columnmenu.QuickActionItem", {
34
+ var QuickActionItem = Entry.extend("sap.m.table.columnmenu.QuickActionItem", {
35
35
  metadata: {
36
36
  library: "sap.m",
37
37
  properties: {
@@ -27,7 +27,7 @@ sap.ui.define([
27
27
  * @extends sap.m.table.columnmenu.QuickActionBase
28
28
  *
29
29
  * @author SAP SE
30
- * @version 1.101.0
30
+ * @version 1.102.2
31
31
  *
32
32
  * @private
33
33
  * @experimental
@@ -127,19 +127,10 @@ sap.ui.define([
127
127
  }
128
128
  };
129
129
 
130
- QuickGroup.prototype._onItemChange = function(oQuickGroupItem, bGrouped) {
131
- var sLabel = oQuickGroupItem.getLabel();
132
-
133
- var oButton = this.getContent().find(function(oBtn) {
134
- return oBtn.getText() === sLabel;
135
- });
136
-
137
- oButton.setPressed(bGrouped);
138
- };
139
-
140
130
  QuickGroup.prototype.onChange = function(oEvent, oItem) {
141
131
  oItem.setProperty("grouped", oEvent.getParameters().pressed, true);
142
132
  this.fireChange({item: oItem});
133
+ this.getMenu().close();
143
134
  };
144
135
 
145
136
  return QuickGroup;
@@ -24,7 +24,7 @@ sap.ui.define([
24
24
  * @extends sap.m.table.columnmenu.QuickActionItem
25
25
  *
26
26
  * @author SAP SE
27
- * @version 1.101.0
27
+ * @version 1.102.2
28
28
  *
29
29
  * @private
30
30
  * @experimental
@@ -43,17 +43,5 @@ sap.ui.define([
43
43
  }
44
44
  });
45
45
 
46
- /*
47
- * @see JSDoc generated by SAPUI5 control API generator
48
- */
49
- QuickGroupItem.prototype.setGrouped = function(bGrouped) {
50
- this.setProperty("grouped", bGrouped);
51
-
52
- var oQuickGroup = this.getParent();
53
- if (oQuickGroup) {
54
- oQuickGroup._onItemChange(this, bGrouped);
55
- }
56
- };
57
-
58
46
  return QuickGroupItem;
59
47
  });
@@ -25,7 +25,7 @@ sap.ui.define([
25
25
  * @extends sap.m.table.columnmenu.QuickActionBase
26
26
  *
27
27
  * @author SAP SE
28
- * @version 1.101.0
28
+ * @version 1.102.2
29
29
  *
30
30
  * @private
31
31
  * @experimental
@@ -74,6 +74,7 @@ sap.ui.define([
74
74
 
75
75
  QuickSort.prototype.onChange = function(oItem) {
76
76
  this.fireChange({item: oItem});
77
+ this.getMenu().close();
77
78
  };
78
79
 
79
80
  return QuickSort;