@openui5/sap.ui.mdc 1.120.26 → 1.120.28

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 (118) hide show
  1. package/THIRDPARTY.txt +1 -1
  2. package/package.json +4 -4
  3. package/src/sap/ui/mdc/.library +1 -1
  4. package/src/sap/ui/mdc/ActionToolbar.js +1 -1
  5. package/src/sap/ui/mdc/Chart.js +1 -1
  6. package/src/sap/ui/mdc/Control.js +1 -1
  7. package/src/sap/ui/mdc/DefaultTypeMap.js +1 -1
  8. package/src/sap/ui/mdc/Element.js +1 -1
  9. package/src/sap/ui/mdc/Field.js +2 -2
  10. package/src/sap/ui/mdc/FilterBar.js +1 -1
  11. package/src/sap/ui/mdc/FilterField.js +2 -2
  12. package/src/sap/ui/mdc/Link.js +1 -1
  13. package/src/sap/ui/mdc/MultiValueField.js +1 -1
  14. package/src/sap/ui/mdc/Table.js +16 -0
  15. package/src/sap/ui/mdc/ValueHelp.js +1 -1
  16. package/src/sap/ui/mdc/actiontoolbar/ActionToolbarAction.js +1 -1
  17. package/src/sap/ui/mdc/chart/ChartImplementationContainer.js +1 -1
  18. package/src/sap/ui/mdc/chart/ChartSelectionDetails.js +1 -1
  19. package/src/sap/ui/mdc/chart/ChartToolbar.js +1 -1
  20. package/src/sap/ui/mdc/chart/PropertyHelper.js +1 -1
  21. package/src/sap/ui/mdc/condition/Condition.js +1 -1
  22. package/src/sap/ui/mdc/condition/ConditionConverter.js +1 -1
  23. package/src/sap/ui/mdc/condition/ConditionModel.js +1 -1
  24. package/src/sap/ui/mdc/condition/FilterConverter.js +1 -1
  25. package/src/sap/ui/mdc/condition/FilterOperatorUtil.js +1 -1
  26. package/src/sap/ui/mdc/condition/Operator.js +1 -1
  27. package/src/sap/ui/mdc/condition/OperatorDynamicDateOption.js +1 -1
  28. package/src/sap/ui/mdc/condition/RangeOperator.js +1 -1
  29. package/src/sap/ui/mdc/field/ConditionType.js +1 -1
  30. package/src/sap/ui/mdc/field/ConditionsType.js +1 -1
  31. package/src/sap/ui/mdc/field/CustomFieldInfo.js +1 -1
  32. package/src/sap/ui/mdc/field/DynamicDateRangeConditionsType.js +1 -1
  33. package/src/sap/ui/mdc/field/FieldBase.js +19 -7
  34. package/src/sap/ui/mdc/field/FieldInfoBase.js +1 -1
  35. package/src/sap/ui/mdc/field/FieldInput.js +42 -3
  36. package/src/sap/ui/mdc/field/FieldInputRenderUtil.js +1 -1
  37. package/src/sap/ui/mdc/field/FieldMultiInput.js +42 -3
  38. package/src/sap/ui/mdc/field/ListFieldHelpItem.js +1 -1
  39. package/src/sap/ui/mdc/field/MultiValueFieldItem.js +1 -1
  40. package/src/sap/ui/mdc/field/TokenDisplay.js +1 -1
  41. package/src/sap/ui/mdc/field/TokenizerDisplay.js +1 -1
  42. package/src/sap/ui/mdc/filterbar/FilterBarBase.js +1 -1
  43. package/src/sap/ui/mdc/filterbar/PropertyHelper.js +1 -1
  44. package/src/sap/ui/mdc/filterbar/p13n/AdaptationFilterBar.js +1 -1
  45. package/src/sap/ui/mdc/filterbar/vh/FilterBar.js +1 -1
  46. package/src/sap/ui/mdc/filterbar/vh/FilterBarDelegate.js +11 -1
  47. package/src/sap/ui/mdc/flexibility/Chart.flexibility.js +1 -1
  48. package/src/sap/ui/mdc/flexibility/FilterBar.flexibility.js +1 -1
  49. package/src/sap/ui/mdc/flexibility/FilterItemFlex.js +1 -1
  50. package/src/sap/ui/mdc/library.js +2 -2
  51. package/src/sap/ui/mdc/link/Factory.js +1 -1
  52. package/src/sap/ui/mdc/link/LinkItem.js +1 -1
  53. package/src/sap/ui/mdc/link/Panel.js +1 -1
  54. package/src/sap/ui/mdc/link/PanelItem.js +1 -1
  55. package/src/sap/ui/mdc/link/SemanticObjectMapping.js +1 -1
  56. package/src/sap/ui/mdc/link/SemanticObjectMappingItem.js +1 -1
  57. package/src/sap/ui/mdc/link/SemanticObjectUnavailableAction.js +1 -1
  58. package/src/sap/ui/mdc/messagebundle_ar.properties +11 -11
  59. package/src/sap/ui/mdc/messagebundle_bg.properties +3 -3
  60. package/src/sap/ui/mdc/messagebundle_da.properties +2 -2
  61. package/src/sap/ui/mdc/messagebundle_de.properties +5 -5
  62. package/src/sap/ui/mdc/messagebundle_es.properties +6 -6
  63. package/src/sap/ui/mdc/messagebundle_es_MX.properties +1 -1
  64. package/src/sap/ui/mdc/messagebundle_fi.properties +1 -1
  65. package/src/sap/ui/mdc/messagebundle_fr_CA.properties +15 -15
  66. package/src/sap/ui/mdc/messagebundle_hr.properties +4 -4
  67. package/src/sap/ui/mdc/messagebundle_hu.properties +3 -3
  68. package/src/sap/ui/mdc/messagebundle_it.properties +2 -2
  69. package/src/sap/ui/mdc/messagebundle_ja.properties +2 -2
  70. package/src/sap/ui/mdc/messagebundle_kk.properties +1 -1
  71. package/src/sap/ui/mdc/messagebundle_ko.properties +1 -1
  72. package/src/sap/ui/mdc/messagebundle_lv.properties +1 -1
  73. package/src/sap/ui/mdc/messagebundle_mk.properties +6 -6
  74. package/src/sap/ui/mdc/messagebundle_nl.properties +2 -2
  75. package/src/sap/ui/mdc/messagebundle_pl.properties +3 -3
  76. package/src/sap/ui/mdc/messagebundle_ru.properties +7 -7
  77. package/src/sap/ui/mdc/messagebundle_sk.properties +2 -2
  78. package/src/sap/ui/mdc/messagebundle_sl.properties +4 -4
  79. package/src/sap/ui/mdc/messagebundle_th.properties +3 -3
  80. package/src/sap/ui/mdc/messagebundle_uk.properties +4 -4
  81. package/src/sap/ui/mdc/mixin/AdaptationMixin.js +1 -1
  82. package/src/sap/ui/mdc/mixin/DelegateMixin.js +1 -1
  83. package/src/sap/ui/mdc/mixin/FilterIntegrationMixin.js +1 -1
  84. package/src/sap/ui/mdc/mixin/PromiseMixin.js +1 -1
  85. package/src/sap/ui/mdc/mixin/PropertyHelperMixin.js +1 -1
  86. package/src/sap/ui/mdc/odata/TypeMap.js +1 -1
  87. package/src/sap/ui/mdc/odata/v4/TypeMap.js +1 -1
  88. package/src/sap/ui/mdc/p13n/PropertyHelper.js +1 -1
  89. package/src/sap/ui/mdc/p13n/panels/FilterPanel.js +1 -1
  90. package/src/sap/ui/mdc/table/ColumnSettings.js +1 -1
  91. package/src/sap/ui/mdc/table/CreationRow.js +1 -1
  92. package/src/sap/ui/mdc/table/DragDropConfig.js +1 -1
  93. package/src/sap/ui/mdc/table/PropertyHelper.js +1 -1
  94. package/src/sap/ui/mdc/table/ResponsiveColumnSettings.js +1 -1
  95. package/src/sap/ui/mdc/table/RowActionItem.js +1 -1
  96. package/src/sap/ui/mdc/table/RowSettings.js +1 -1
  97. package/src/sap/ui/mdc/table/V4AnalyticsPropertyHelper.js +1 -1
  98. package/src/sap/ui/mdc/table/utils/Personalization.js +1 -1
  99. package/src/sap/ui/mdc/ushell/SemanticObjectMapping.js +1 -1
  100. package/src/sap/ui/mdc/ushell/SemanticObjectMappingItem.js +1 -1
  101. package/src/sap/ui/mdc/ushell/SemanticObjectUnavailableAction.js +1 -1
  102. package/src/sap/ui/mdc/util/InfoBar.js +1 -1
  103. package/src/sap/ui/mdc/util/PromiseCache.js +1 -1
  104. package/src/sap/ui/mdc/util/PropertyHelper.js +1 -1
  105. package/src/sap/ui/mdc/valuehelp/Dialog.js +4 -3
  106. package/src/sap/ui/mdc/valuehelp/Popover.js +13 -8
  107. package/src/sap/ui/mdc/valuehelp/base/Container.js +1 -1
  108. package/src/sap/ui/mdc/valuehelp/base/Content.js +4 -2
  109. package/src/sap/ui/mdc/valuehelp/base/DefineConditionPanel.js +1 -1
  110. package/src/sap/ui/mdc/valuehelp/base/DialogTab.js +1 -1
  111. package/src/sap/ui/mdc/valuehelp/base/FilterableListContent.js +1 -1
  112. package/src/sap/ui/mdc/valuehelp/base/ListContent.js +1 -1
  113. package/src/sap/ui/mdc/valuehelp/content/Bool.js +1 -1
  114. package/src/sap/ui/mdc/valuehelp/content/Conditions.js +1 -1
  115. package/src/sap/ui/mdc/valuehelp/content/FixedList.js +41 -33
  116. package/src/sap/ui/mdc/valuehelp/content/FixedListItem.js +1 -1
  117. package/src/sap/ui/mdc/valuehelp/content/MDCTable.js +2 -2
  118. package/src/sap/ui/mdc/valuehelp/content/MTable.js +115 -63
package/THIRDPARTY.txt CHANGED
@@ -466,7 +466,7 @@ License: Apache-2.0
466
466
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/Apache-2.0.txt
467
467
  Contained in: lib/jsdoc/ui5/plugin.js
468
468
 
469
- Component: SAP Theming Base Content, version: 11.6.8
469
+ Component: SAP Theming Base Content, version: 11.28.2
470
470
  Copyright: SAP SE or an SAP affiliate company and Theming Base Content contributors
471
471
  License: Apache-2.0
472
472
  License Text: https://github.com/SAP/openui5/blob/master/LICENSES/Apache-2.0.txt
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openui5/sap.ui.mdc",
3
- "version": "1.120.26",
3
+ "version": "1.120.28",
4
4
  "description": "OpenUI5 UI Library sap.ui.mdc",
5
5
  "author": "SAP SE (https://www.sap.com)",
6
6
  "license": "Apache-2.0",
@@ -14,8 +14,8 @@
14
14
  "url": "https://github.com/SAP/openui5.git"
15
15
  },
16
16
  "dependencies": {
17
- "@openui5/sap.m": "1.120.26",
18
- "@openui5/sap.ui.core": "1.120.26",
19
- "@openui5/sap.ui.layout": "1.120.26"
17
+ "@openui5/sap.m": "1.120.28",
18
+ "@openui5/sap.ui.core": "1.120.28",
19
+ "@openui5/sap.ui.layout": "1.120.28"
20
20
  }
21
21
  }
@@ -6,7 +6,7 @@
6
6
  <copyright>OpenUI5
7
7
  * (c) Copyright 2009-2025 SAP SE or an SAP affiliate company.
8
8
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.</copyright>
9
- <version>1.120.26</version>
9
+ <version>1.120.28</version>
10
10
 
11
11
  <documentation>UI5 library: sap.ui.mdc</documentation>
12
12
 
@@ -32,7 +32,7 @@ sap.ui.define([
32
32
  * The content aggregation of the control must not be used.
33
33
  * @extends sap.m.OverflowToolbar
34
34
  * @author SAP SE
35
- * @version 1.120.26
35
+ * @version 1.120.28
36
36
  * @constructor
37
37
  * @since 1.58
38
38
  * @public
@@ -65,7 +65,7 @@ sap.ui.define([
65
65
  * <b>Note:</b> The inner chart needs to be assigned <code>ChartDelegate</code>.
66
66
  * @extends sap.ui.mdc.Control
67
67
  * @author SAP SE
68
- * @version 1.120.26
68
+ * @version 1.120.28
69
69
  * @constructor
70
70
  *
71
71
  * @public
@@ -20,7 +20,7 @@ sap.ui.define([
20
20
  * @extends sap.ui.core.Control
21
21
  * @abstract
22
22
  * @author SAP SE
23
- * @version 1.120.26
23
+ * @version 1.120.28
24
24
  * @alias sap.ui.mdc.Control
25
25
  *
26
26
  * @borrows sap.ui.mdc.mixin.DelegateMixin.awaitControlDelegate as #awaitControlDelegate
@@ -30,7 +30,7 @@ sap.ui.define([
30
30
  * </ul>
31
31
  *
32
32
  * @author SAP SE
33
- * @version 1.120.26
33
+ * @version 1.120.28
34
34
  * @public
35
35
  * @since 1.114.0
36
36
  * @namespace
@@ -20,7 +20,7 @@ sap.ui.define([
20
20
  * @extends sap.ui.core.Element
21
21
  * @abstract
22
22
  * @author SAP SE
23
- * @version 1.120.26
23
+ * @version 1.120.28
24
24
  * @alias sap.ui.mdc.Element
25
25
  *
26
26
  * @borrows sap.ui.mdc.mixin.DelegateMixin.awaitControlDelegate as #awaitControlDelegate
@@ -54,11 +54,11 @@ sap.ui.define([
54
54
  * @implements sap.ui.core.IFormContent, sap.ui.core.ISemanticFormContent, sap.m.IOverflowToolbarContent
55
55
  *
56
56
  * @author SAP SE
57
- * @version 1.120.26
57
+ * @version 1.120.28
58
58
  *
59
59
  * @constructor
60
60
  * @alias sap.ui.mdc.Field
61
- * @version 1.120.26
61
+ * @version 1.120.28
62
62
  * @since 1.54.0
63
63
  *
64
64
  * @public
@@ -57,7 +57,7 @@ sap.ui.define([
57
57
  * The metadata information is provided via the {@link sap.ui.mdc.FilterBarDelegate FilterBarDelegate} implementation. This implementation has to be provided by the application.
58
58
  * @extends sap.ui.mdc.filterbar.FilterBarBase
59
59
  * @author SAP SE
60
- * @version 1.120.26
60
+ * @version 1.120.28
61
61
  * @constructor
62
62
  * @public
63
63
  * @since 1.61.0
@@ -51,11 +51,11 @@ sap.ui.define([
51
51
  * @implements sap.ui.core.IFormContent, sap.ui.core.ISemanticFormContent, sap.m.IOverflowToolbarContent
52
52
  *
53
53
  * @author SAP SE
54
- * @version 1.120.26
54
+ * @version 1.120.28
55
55
  *
56
56
  * @constructor
57
57
  * @alias sap.ui.mdc.FilterField
58
- * @version 1.120.26
58
+ * @version 1.120.28
59
59
  * @since 1.48.0
60
60
  *
61
61
  * @public
@@ -80,7 +80,7 @@ sap.ui.define([
80
80
  * @extends sap.ui.mdc.field.FieldInfoBase
81
81
  *
82
82
  * @author SAP SE
83
- * @version 1.120.26
83
+ * @version 1.120.28
84
84
  *
85
85
  * @constructor
86
86
  * @alias sap.ui.mdc.Link
@@ -44,7 +44,7 @@ sap.ui.define([
44
44
  * @constructor
45
45
  * @alias sap.ui.mdc.MultiValueField
46
46
  * @author SAP SE
47
- * @version 1.120.26
47
+ * @version 1.120.28
48
48
  * @since 1.93.0
49
49
  *
50
50
  * @public
@@ -898,6 +898,9 @@ sap.ui.define([
898
898
  if (bNewValue && oControl) {
899
899
  this._setToolbarBetween(oToolBar);
900
900
  }
901
+ if (sAggregationName === "variant") {
902
+ this._updateVariantManagementStyle();
903
+ }
901
904
  return this;
902
905
  };
903
906
  });
@@ -1237,6 +1240,7 @@ sap.ui.define([
1237
1240
  }
1238
1241
  this.setProperty("headerLevel", sLevel, true);
1239
1242
  this._oTitle && this._oTitle.setLevel(sLevel);
1243
+ this._updateVariantManagementStyle();
1240
1244
  return this;
1241
1245
  };
1242
1246
 
@@ -1246,6 +1250,7 @@ sap.ui.define([
1246
1250
  }
1247
1251
  this.setProperty("headerStyle", sStyle, true);
1248
1252
  this._oTitle && this._oTitle.setTitleStyle(this.getHeaderStyle() || TitleLevel.H4);
1253
+ this._updateVariantManagementStyle();
1249
1254
  return this;
1250
1255
  };
1251
1256
 
@@ -1834,6 +1839,7 @@ sap.ui.define([
1834
1839
  if (this._oTitle) {
1835
1840
  this._oTitle.setWidth(this.getHeaderVisible() ? undefined : "0px");
1836
1841
  }
1842
+ this._updateVariantManagementStyle();
1837
1843
  return this;
1838
1844
  };
1839
1845
 
@@ -3038,6 +3044,16 @@ sap.ui.define([
3038
3044
  this.getControlDelegate().setSelectedContexts(this, aContexts);
3039
3045
  };
3040
3046
 
3047
+ Table.prototype._updateVariantManagementStyle = function() {
3048
+ const oVariantManagement = this.getVariant();
3049
+
3050
+ if (oVariantManagement) {
3051
+ oVariantManagement.setShowAsText(this.getHeaderVisible());
3052
+ oVariantManagement.setHeaderLevel(this.getHeaderLevel());
3053
+ oVariantManagement.setTitleStyle(this.getHeaderStyle() || TitleLevel.H4);
3054
+ }
3055
+ };
3056
+
3041
3057
  /**
3042
3058
  * @name sap.ui.mdc.Table#addAction
3043
3059
  * @private
@@ -63,7 +63,7 @@ sap.ui.define([
63
63
  * and {@link sap.ui.mdc.FilterField FilterField} controls using the <code>valueHelp</code> association. One <code>ValueHelp</code> element instance can be
64
64
  * assigned to multiple fields (like in different table rows). It should be placed in the control tree on the container holding the fields.
65
65
  * @extends sap.ui.mdc.Element
66
- * @version 1.120.26
66
+ * @version 1.120.28
67
67
  * @constructor
68
68
  * @abstract
69
69
  * @public
@@ -22,7 +22,7 @@ sap.ui.define([
22
22
  * chart/table).
23
23
  * @extends sap.ui.core.Control
24
24
  * @author SAP SE
25
- * @version 1.120.26
25
+ * @version 1.120.28
26
26
  * @constructor
27
27
  * @since 1.58
28
28
  * @public
@@ -22,7 +22,7 @@ sap.ui.define([
22
22
  * @class The <code>ChartImplementationContainer</code> creates a container for the <code>content</code> (chart) and <code>noDataContent</code>. Based on the <code>showNoDataStruct</code> the <code>content</code> or <code>noDataContent</code> will be shown.
23
23
  * @extends sap.ui.core.Control
24
24
  * @author SAP SE
25
- * @version 1.120.26
25
+ * @version 1.120.28
26
26
  * @constructor
27
27
  *
28
28
  * @public
@@ -26,7 +26,7 @@ sap.ui.define([
26
26
  * @class The <code>ChartSelectionDetails</code> control creates a <code>sap.m.SelectionDetails</code> popover based on metadata and the configuration specified.
27
27
  * @extends sap.m.SelectionDetails
28
28
  * @author SAP SE
29
- * @version 1.120.26
29
+ * @version 1.120.28
30
30
  * @constructor
31
31
  * @public
32
32
  * @since 1.88
@@ -49,7 +49,7 @@ sap.ui.define([
49
49
  * @class The ChartToolbar control is a sap.m.OverflowToolbar based on metadata and the configuration specified.
50
50
  * @extends sap.ui.mdc.ActionToolbar
51
51
  * @author SAP SE
52
- * @version 1.120.26
52
+ * @version 1.120.28
53
53
  * @constructor
54
54
  * @experimental As of version 1.88
55
55
  * @private
@@ -26,7 +26,7 @@ sap.ui.define([
26
26
  * @extends sap.ui.mdc.util.PropertyHelper
27
27
  *
28
28
  * @author SAP SE
29
- * @version 1.120.26
29
+ * @version 1.120.28
30
30
  *
31
31
  * @private
32
32
  * @experimental
@@ -34,7 +34,7 @@ sap.ui.define([
34
34
  *
35
35
  * @namespace
36
36
  * @author SAP SE
37
- * @version 1.120.26
37
+ * @version 1.120.28
38
38
  * @since 1.61.0
39
39
  * @alias sap.ui.mdc.condition.Condition
40
40
  *
@@ -24,7 +24,7 @@ sap.ui.define([
24
24
  *
25
25
  * @namespace
26
26
  * @author SAP SE
27
- * @version 1.120.26
27
+ * @version 1.120.28
28
28
  * @private
29
29
  * @ui5-restricted sap.ui.mdc
30
30
  * @experimental As of version 1.74
@@ -33,7 +33,7 @@ sap.ui.define([
33
33
  * @extends sap.ui.model.json.JSONModel
34
34
  *
35
35
  * @author SAP SE
36
- * @version 1.120.26
36
+ * @version 1.120.28
37
37
  * @since 1.48.0
38
38
  * @alias sap.ui.mdc.condition.ConditionModel
39
39
  *
@@ -24,7 +24,7 @@ function(
24
24
  *
25
25
  * @namespace
26
26
  * @author SAP SE
27
- * @version 1.120.26
27
+ * @version 1.120.28
28
28
  * @since 1.78.0
29
29
  * @alias sap.ui.mdc.condition.FilterConverter
30
30
  *
@@ -57,7 +57,7 @@ function(
57
57
  *
58
58
  * @namespace
59
59
  * @author SAP SE
60
- * @version 1.120.26
60
+ * @version 1.120.28
61
61
  * @since 1.73.0
62
62
  * @alias sap.ui.mdc.condition.FilterOperatorUtil
63
63
  *
@@ -100,7 +100,7 @@ sap.ui.define([
100
100
  * @param {string} [oConfiguration.additionalInfo] additionalInfo text for the operator. Will be shown in the operator suggest as second column. If not used (undefined) the Include or Exclude information of the operator is used.
101
101
  * @constructor
102
102
  * @author SAP SE
103
- * @version 1.120.26
103
+ * @version 1.120.28
104
104
  * @public
105
105
  * @alias sap.ui.mdc.condition.Operator
106
106
  * @since 1.73.0
@@ -51,7 +51,7 @@ sap.ui.define([
51
51
  * @extends sap.m.DynamicDateOption
52
52
  *
53
53
  * @author SAP SE
54
- * @version 1.120.26
54
+ * @version 1.120.28
55
55
  *
56
56
  * @private
57
57
  * @ui5-restricted sap.ui.mdc
@@ -35,7 +35,7 @@ function(
35
35
  * @param {int[]|function} [oConfiguration.defaultValues] Array of values for the defaults of <code>RangeOperators</code> parameter. This can be a function, which returns the array of values. If not used the default for the values is 1.
36
36
  * @constructor
37
37
  * @author SAP SE
38
- * @version 1.120.26
38
+ * @version 1.120.28
39
39
  * @public
40
40
  * @alias sap.ui.mdc.condition.RangeOperator
41
41
  * @since 1.74.0
@@ -55,7 +55,7 @@ sap.ui.define([
55
55
  * @extends sap.ui.model.SimpleType
56
56
  *
57
57
  * @author SAP SE
58
- * @version 1.120.26
58
+ * @version 1.120.28
59
59
  *
60
60
  * @since 1.62.0
61
61
  * @public
@@ -44,7 +44,7 @@ sap.ui.define([
44
44
  * @extends sap.ui.model.SimpleType
45
45
  *
46
46
  * @author SAP SE
47
- * @version 1.120.26
47
+ * @version 1.120.28
48
48
  *
49
49
  * @since 1.62.0
50
50
  * @public
@@ -16,7 +16,7 @@ sap.ui.define([
16
16
  * @param {object} [mSettings] Initial settings for the new control
17
17
  * @class A field help used in the <code>FieldInfo</code> aggregation in <code>FieldBase</code> controls that allows you to add custom content.
18
18
  * @extends sap.ui.mdc.field.FieldInfoBase
19
- * @version 1.120.26
19
+ * @version 1.120.28
20
20
  * @constructor
21
21
  * @private
22
22
  * @ui5-restricted sap.fe
@@ -48,7 +48,7 @@ sap.ui.define([
48
48
  * @extends sap.ui.mdc.field.ConditionsType
49
49
  *
50
50
  * @author SAP SE
51
- * @version 1.120.26
51
+ * @version 1.120.28
52
52
  *
53
53
  * @since 1.96.0
54
54
  * @public
@@ -93,7 +93,7 @@ sap.ui.define([
93
93
  * @implements sap.ui.core.IFormContent, sap.ui.core.ISemanticFormContent, sap.m.IOverflowToolbarContent
94
94
  *
95
95
  * @author SAP SE
96
- * @version 1.120.26
96
+ * @version 1.120.28
97
97
  *
98
98
  * @constructor
99
99
  * @alias sap.ui.mdc.field.FieldBase
@@ -882,10 +882,12 @@ sap.ui.define([
882
882
  if (oValueHelp.isNavigationEnabled(iStep) && // if open let ValueHelp decide if and how to navigate
883
883
  (!this.getContentFactory().isMeasure() || oSource.getShowValueHelp())) { // for Currenncy/Unit field navigate only in part with valueHelp
884
884
  // if only type-ahead but no real value help, only navigate if open
885
+ const oContent = this.getControlForSuggestion();
886
+ const bFocusInField = oContent.hasStyleClass("sapMFocus");
885
887
  oEvent.preventDefault();
886
888
  oEvent.stopPropagation();
887
889
  oValueHelp.setFilterValue(this._sFilterValue); // to be sure to filter for typed value
888
- oValueHelp.navigate(iStep);
890
+ oValueHelp.navigate(oValueHelp.isOpen() && bFocusInField && iStep === 1 ? 0 : iStep); // on first navigation just initial selected item should be navigated
889
891
  }
890
892
  }
891
893
  }
@@ -2782,8 +2784,10 @@ sap.ui.define([
2782
2784
  const aConditions = this.getConditions();
2783
2785
  _setConditionsOnValueHelp.call(this, aConditions, oValueHelp);
2784
2786
  oValueHelp.toggleOpen(!!bOpenAsTypeahed);
2787
+ const bIsFocusInHelp = oValueHelp.isFocusInHelp();
2788
+ this._bFocusOnValueHelp = !!oEvent.getSource && !bIsFocusInHelp; // show focus on dropdown if opened via F4 (set it only after really opened)
2785
2789
  const oContent = oEvent.srcControl || oEvent.getSource(); // as, if called from Tap or other browser event getSource is not available
2786
- if (!oValueHelp.isFocusInHelp()) {
2790
+ if (!bIsFocusInHelp) {
2787
2791
  // need to reset bValueHelpRequested in Input, otherwise on focusout no change event and navigation don't work
2788
2792
  if (oContent.bValueHelpRequested) {
2789
2793
  oContent.bValueHelpRequested = false; // TODO: need API
@@ -3051,7 +3055,7 @@ sap.ui.define([
3051
3055
 
3052
3056
  const oCondition = oEvent.getParameter("condition");
3053
3057
  const sFilterValue = oEvent.getParameter("filterValue");
3054
- const sItemId = oEvent.getParameter("itemId");
3058
+ // const sItemId = oEvent.getParameter("itemId");
3055
3059
  const oContent = this.getControlForSuggestion();
3056
3060
  const oOperator = FilterOperatorUtil.getEQOperator(this.getSupportedOperators()); /// use EQ operator of Field (might be different one)
3057
3061
 
@@ -3096,7 +3100,7 @@ sap.ui.define([
3096
3100
  oContent.selectText(oAutocomplete.selectionStart, oAutocomplete.selectionEnd);
3097
3101
 
3098
3102
  oContentFactory.updateConditionType();
3099
- _setAriaAttributes.call(this, true, sItemId); // TODO: check if still open?
3103
+ _setAriaAttributes.call(this, true, null); // as visual focus stays in Field - no connection to item
3100
3104
  }
3101
3105
  }
3102
3106
 
@@ -3125,16 +3129,24 @@ sap.ui.define([
3125
3129
  const aConditions = this.getConditions();
3126
3130
  _setConditionsOnValueHelp.call(this, aConditions, oValueHelp);
3127
3131
 
3132
+ if (_isFocused.call(this)) { // restore focus visualization
3133
+ oContent.addStyleClass("sapMFocus");
3134
+ }
3135
+ delete this._bFocusOnValueHelp; // only used while opening
3136
+
3128
3137
  }
3129
3138
 
3130
3139
  function _handleValueHelpOpened(oEvent) {
3131
3140
 
3132
3141
  let sItemId;
3133
- if (this.getMaxConditionsForHelp() === 1 || this._sFilterValue) { // set aria-activedescendant only in singleValue or typeahead
3134
- sItemId = oEvent.getParameter("itemId");
3142
+ if (this._bFocusOnValueHelp) {
3143
+ if (this.getMaxConditionsForHelp() === 1 || this._sFilterValue) { // set aria-activedescendant only in singleValue or typeahead
3144
+ sItemId = oEvent.getParameter("itemId");
3145
+ }
3135
3146
  }
3136
3147
  _setAriaAttributes.call(this, true, sItemId);
3137
3148
  _setShowValueStateMessage.call(this, false);
3149
+ delete this._bFocusOnValueHelp; // only used while opening
3138
3150
 
3139
3151
  // close ValueState message on opening, because opened is sometimes very delayed what would lead to strange effect
3140
3152
 
@@ -29,7 +29,7 @@ sap.ui.define([
29
29
  * A <code>FieldInfoBase</code> element is a base class that shows any kind of information related to the <code>Field</code> control, for example, navigation targets or contact details.
30
30
  * This is the basis for link-features. If the link is pressed a popover might be opened.
31
31
  * @extends sap.ui.mdc.Element
32
- * @version 1.120.26
32
+ * @version 1.120.28
33
33
  * @constructor
34
34
  * @since 1.54.0
35
35
  * @public
@@ -6,10 +6,12 @@
6
6
 
7
7
  sap.ui.define([
8
8
  'sap/m/Input',
9
- 'sap/ui/mdc/field/FieldInputRenderer'
9
+ 'sap/ui/mdc/field/FieldInputRenderer',
10
+ 'sap/ui/base/ManagedObjectObserver'
10
11
  ], function(
11
12
  Input,
12
- FieldInputRenderer
13
+ FieldInputRenderer,
14
+ ManagedObjectObserver
13
15
  ) {
14
16
  "use strict";
15
17
 
@@ -22,7 +24,7 @@ sap.ui.define([
22
24
  * The <code>FieldInput</code> control is used to render an input field inside a control based on {@link sap.ui.mdc.field.FieldBase FieldBase}.
23
25
  * It enhances the {@link sap.m.Input Input} control to add ARIA attributes and other {@link sap.ui.mdc.field.FieldBase FieldBase}-specific logic.
24
26
  * @extends sap.m.Input
25
- * @version 1.120.26
27
+ * @version 1.120.28
26
28
  * @constructor
27
29
  * @abstract
28
30
  * @private
@@ -51,6 +53,43 @@ sap.ui.define([
51
53
  renderer: FieldInputRenderer
52
54
  });
53
55
 
56
+ FieldInput.prototype.init = function() {
57
+
58
+ Input.prototype.init.apply(this, arguments);
59
+
60
+ this._oObserver = new ManagedObjectObserver(_observeChanges.bind(this));
61
+
62
+ this._oObserver.observe(this, {
63
+ properties: ["ariaAttributes"]
64
+ });
65
+
66
+ };
67
+
68
+ FieldInput.prototype.exit = function() {
69
+
70
+ Input.prototype.exit.apply(this, arguments);
71
+
72
+ this._oObserver.disconnect();
73
+ this._oObserver = undefined;
74
+
75
+ };
76
+
77
+ function _observeChanges(oChanges) {
78
+
79
+ if (oChanges.name === "ariaAttributes") {
80
+ // set aria-activedescendant directly to prevent anouncement of old one
81
+ if (oChanges.current.aria?.activedescendant !== oChanges.old.aria?.activedescendant) {
82
+ const oDomRef = this.getFocusDomRef();
83
+ if (!oChanges.current.aria?.activedescendant) {
84
+ oDomRef.removeAttribute("aria-activedescendant");
85
+ } else {
86
+ oDomRef.setAttribute("aria-activedescendant", oChanges.current.aria.activedescendant);
87
+ }
88
+ }
89
+ }
90
+
91
+ }
92
+
54
93
  return FieldInput;
55
94
 
56
95
  });
@@ -16,7 +16,7 @@ sap.ui.define([
16
16
  * @class Functions uses in <code>FieldInputRenderer</code> and <code>FieldMultiInputRenderer</code> to adjust aria attributes.
17
17
  *
18
18
  * @author SAP SE
19
- * @version 1.120.26
19
+ * @version 1.120.28
20
20
  * @since 1.86.0
21
21
  * @alias sap.ui.mdc.field.FieldInputRenderUtil
22
22
  *
@@ -6,10 +6,12 @@
6
6
 
7
7
  sap.ui.define([
8
8
  'sap/m/MultiInput',
9
- 'sap/ui/mdc/field/FieldMultiInputRenderer'
9
+ 'sap/ui/mdc/field/FieldMultiInputRenderer',
10
+ 'sap/ui/base/ManagedObjectObserver'
10
11
  ], function(
11
12
  MultiInput,
12
- FieldMultiInputRenderer
13
+ FieldMultiInputRenderer,
14
+ ManagedObjectObserver
13
15
  ) {
14
16
  "use strict";
15
17
 
@@ -22,7 +24,7 @@ sap.ui.define([
22
24
  * The <code>FieldMultiInput</code> control is used to render a multi-input field inside a control based on {@link sap.ui.mdc.field.FieldBase FieldBase}.
23
25
  * It enhances the {@link sap.m.MultiInput MultiInput} control to add ARIA attributes and other {@link sap.ui.mdc.field.FieldBase FieldBase}-specific logic.
24
26
  * @extends sap.m.MultiInput
25
- * @version 1.120.26
27
+ * @version 1.120.28
26
28
  * @constructor
27
29
  * @abstract
28
30
  * @private
@@ -51,6 +53,43 @@ sap.ui.define([
51
53
  renderer: FieldMultiInputRenderer
52
54
  });
53
55
 
56
+ FieldMultiInput.prototype.init = function() {
57
+
58
+ MultiInput.prototype.init.apply(this, arguments);
59
+
60
+ this._oObserver = new ManagedObjectObserver(_observeChanges.bind(this));
61
+
62
+ this._oObserver.observe(this, {
63
+ properties: ["ariaAttributes"]
64
+ });
65
+
66
+ };
67
+
68
+ FieldMultiInput.prototype.exit = function() {
69
+
70
+ MultiInput.prototype.exit.apply(this, arguments);
71
+
72
+ this._oObserver.disconnect();
73
+ this._oObserver = undefined;
74
+
75
+ };
76
+
77
+ function _observeChanges(oChanges) {
78
+
79
+ if (oChanges.name === "ariaAttributes") {
80
+ // set aria-activedescendant directly to prevent anouncement of old one
81
+ if (oChanges.current.aria?.activedescendant !== oChanges.old.aria?.activedescendant) {
82
+ const oDomRef = this.getFocusDomRef();
83
+ if (!oChanges.current.aria?.activedescendant) {
84
+ oDomRef.removeAttribute("aria-activedescendant");
85
+ } else {
86
+ oDomRef.setAttribute("aria-activedescendant", oChanges.current.aria.activedescendant);
87
+ }
88
+ }
89
+ }
90
+
91
+ }
92
+
54
93
  return FieldMultiInput;
55
94
 
56
95
  });
@@ -23,7 +23,7 @@ sap.ui.define([
23
23
  * @extends sap.ui.mdc.valuehelp.content.FixedListItem
24
24
  *
25
25
  * @author SAP SE
26
- * @version 1.120.26
26
+ * @version 1.120.28
27
27
  *
28
28
  * @private
29
29
  * @ui5-restricted sap.fe
@@ -20,7 +20,7 @@ sap.ui.define([
20
20
  * Base type for <code>MultiValueFieldItem</code> control.
21
21
  * The {@link sap.ui.mdc.MultiValueField MultiValueField} holds its values as items. The <code>MultiValueFieldItem</code> element defines these items.
22
22
  * @extends sap.ui.core.Element
23
- * @version 1.120.26
23
+ * @version 1.120.28
24
24
  * @constructor
25
25
  * @since 1.93.0
26
26
  * @public
@@ -22,7 +22,7 @@ sap.ui.define([
22
22
  * The <code>TokenDisplay</code> control is used to render a field inside a control based on {@link sap.ui.mdc.field.FieldBase FieldBase}.
23
23
  * It enhances the {@link sap.m.Token Token} control to add ARIA attributes and other {@link sap.ui.mdc.field.FieldBase FieldBase}-specific logic.
24
24
  * @extends sap.m.Token
25
- * @version 1.120.26
25
+ * @version 1.120.28
26
26
  * @constructor
27
27
  * @abstract
28
28
  * @private