@openui5/sap.uxap 1.108.7 → 1.108.9

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openui5/sap.uxap",
3
- "version": "1.108.7",
3
+ "version": "1.108.9",
4
4
  "description": "OpenUI5 UI Library sap.uxap",
5
5
  "author": "SAP SE (https://www.sap.com)",
6
6
  "license": "Apache-2.0",
@@ -14,9 +14,9 @@
14
14
  "url": "https://github.com/SAP/openui5.git"
15
15
  },
16
16
  "dependencies": {
17
- "@openui5/sap.f": "1.108.7",
18
- "@openui5/sap.m": "1.108.7",
19
- "@openui5/sap.ui.core": "1.108.7",
20
- "@openui5/sap.ui.layout": "1.108.7"
17
+ "@openui5/sap.f": "1.108.9",
18
+ "@openui5/sap.m": "1.108.9",
19
+ "@openui5/sap.ui.core": "1.108.9",
20
+ "@openui5/sap.ui.layout": "1.108.9"
21
21
  }
22
22
  }
@@ -3,7 +3,7 @@
3
3
 
4
4
  <name>sap.uxap</name>
5
5
  <vendor>SAP SE</vendor>
6
- <version>1.108.7</version>
6
+ <version>1.108.9</version>
7
7
  <copyright>OpenUI5
8
8
  * (c) Copyright 2009-2023 SAP SE or an SAP affiliate company.
9
9
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.</copyright>
@@ -365,7 +365,9 @@ sap.ui.define([
365
365
  oSelectedSectionDomRef = oSelectedSection.getDomRef();
366
366
 
367
367
  if (oSelectedSectionDomRef) {
368
- oSelectedSectionDomRef.focus();
368
+ setTimeout(function () {
369
+ oSelectedSectionDomRef.focus();
370
+ }, 0);
369
371
  }
370
372
  } else {
371
373
  Log.error("AnchorBar :: cannot find corresponding section", oSelectedItem.getKey());
@@ -21,7 +21,7 @@ sap.ui.define([
21
21
  *
22
22
  * @class
23
23
  * @author SAP SE
24
- * @version 1.108.7
24
+ * @version 1.108.9
25
25
  * @since 1.26
26
26
  * @alias sap.uxap.BlockBaseMetadata
27
27
  * @extends sap.ui.core.ElementMetadata
@@ -22,7 +22,7 @@ sap.ui.define(['sap/ui/core/Element', './library'],
22
22
  * @extends sap.ui.core.Element
23
23
  *
24
24
  * @author SAP SE
25
- * @version 1.108.7
25
+ * @version 1.108.9
26
26
  *
27
27
  * @constructor
28
28
  * @public
@@ -40,7 +40,7 @@ sap.ui.define([
40
40
  * @implements sap.uxap.IHeaderContent
41
41
  *
42
42
  * @author SAP SE
43
- * @version 1.108.7
43
+ * @version 1.108.9
44
44
  *
45
45
  * @constructor
46
46
  * @public
@@ -42,7 +42,7 @@ sap.ui.define([
42
42
  * @implements sap.uxap.IHeaderTitle
43
43
  *
44
44
  * @author SAP SE
45
- * @version 1.108.7
45
+ * @version 1.108.9
46
46
  *
47
47
  * @constructor
48
48
  * @public
@@ -1203,7 +1203,7 @@ sap.ui.define([
1203
1203
  }
1204
1204
  // enable scrolling in non-fullscreen-mode only
1205
1205
  // (to avoid any scrollbar appearing even for an instance while we snap/unsnap header)
1206
- this._toggleScrolling(!this._bAllContentFitsContainer);
1206
+ this._toggleScrolling(!this._bAllContentFitsContainer || this._headerBiggerThanAllowedToBeFixed());
1207
1207
 
1208
1208
  this._registerOnContentResize();
1209
1209
 
@@ -2077,7 +2077,7 @@ sap.ui.define([
2077
2077
 
2078
2078
  // the current tab changed => update the <code>this._bAllContentFitsContainer</code> accordingly
2079
2079
  this._bAllContentFitsContainer = this._hasSingleVisibleFullscreenSubSection(oToSelect);
2080
- this._toggleScrolling(!this._bAllContentFitsContainer);
2080
+ this._toggleScrolling(!this._bAllContentFitsContainer || this._headerBiggerThanAllowedToBeFixed());
2081
2081
 
2082
2082
  bFullscreenModeChanged = this._bAllContentFitsContainer !== bWasFullscreenMode;
2083
2083
  if (bFullscreenModeChanged && !this._bHeaderExpanded) {
@@ -2954,6 +2954,7 @@ sap.ui.define([
2954
2954
  // (1) add top padding for the area underneath the title element
2955
2955
  // so that the title does not overlap the content of the scroll container
2956
2956
  oWrapperElement.style.paddingTop = iTitleHeight + "px";
2957
+ oWrapperElement.style.scrollPaddingTop = iTitleHeight + "px";
2957
2958
 
2958
2959
  // (2) also make the area underneath the title invisible (using clip-path)
2959
2960
  // to allow usage of *transparent background* of the title element
@@ -37,7 +37,7 @@ sap.ui.define([
37
37
  * @extends sap.ui.core.Element
38
38
  *
39
39
  * @author SAP SE
40
- * @version 1.108.7
40
+ * @version 1.108.9
41
41
  *
42
42
  * @constructor
43
43
  * @public
@@ -159,6 +159,10 @@ sap.ui.define([
159
159
  ResizeHandler.deregister(this._iResizeHandlerId);
160
160
  this._iResizeHandlerId = null;
161
161
  }
162
+
163
+ if (ObjectPageSectionBase.prototype.exit) {
164
+ ObjectPageSectionBase.prototype.exit.call(this);
165
+ }
162
166
  };
163
167
 
164
168
  ObjectPageSection.prototype._onResize = function () {
@@ -139,10 +139,18 @@ sap.ui.define([
139
139
  ObjectPageSectionBase.prototype.onBeforeRendering = function () {
140
140
  var sAriaLabeledBy = "ariaLabelledBy";
141
141
 
142
- this.setInvisibleTextLabelValue(this._getTitle());
143
-
144
142
  if (!this.getAggregation(sAriaLabeledBy)) {
145
143
  this.setAggregation(sAriaLabeledBy, this._getAriaLabelledBy(), true); // this is called onBeforeRendering, so suppress invalidate
144
+ } else {
145
+ this.updateInvisibleTextLabelValue();
146
+ }
147
+ };
148
+
149
+
150
+ ObjectPageSectionBase.prototype.exit = function () {
151
+ if (this._oInvisibleText) {
152
+ this._oInvisibleText.destroy();
153
+ this._oInvisibleText = null;
146
154
  }
147
155
  };
148
156
 
@@ -360,18 +368,15 @@ sap.ui.define([
360
368
  };
361
369
 
362
370
  /**
363
- * Returns the DOM Element that should get the focus.
364
- *
365
- * To be overwritten by the specific control method.
371
+ * Performs the update of the invisible text label.
372
+ * This method is called for example when the section title is changed.
366
373
  *
367
374
  * @return {this} this for chaining
368
375
  * @protected
369
376
  */
370
- ObjectPageSectionBase.prototype.setInvisibleTextLabelValue = function (sValue) {
377
+ ObjectPageSectionBase.prototype.updateInvisibleTextLabelValue = function () {
371
378
  var oAriaLabelledBy = this.getAggregation("ariaLabelledBy"),
372
- sLabel = "";
373
-
374
- sLabel = sValue || this.getSectionText();
379
+ sLabel = this._getAriaLabelledByText();
375
380
 
376
381
  if (oAriaLabelledBy) {
377
382
  sap.ui.getCore().byId(oAriaLabelledBy.getId()).setText(sLabel);
@@ -381,22 +386,46 @@ sap.ui.define([
381
386
  };
382
387
 
383
388
  /**
384
- * provide a default aria-labeled by text
389
+ * Returns the invisible text control for the ariaLabelledBy aggregation.
385
390
  * @private
386
391
  * @returns {*} sap.ui.core.InvisibleText
387
392
  */
388
393
  ObjectPageSectionBase.prototype._getAriaLabelledBy = function () {
394
+ var sLabel = this._getAriaLabelledByText();
395
+ return this._getInvisibleText().setText(sLabel);
396
+ };
397
+
398
+ /**
399
+ * Returns the label string for the section.
400
+ * @private
401
+ * @returns {string} aria-labeled by text
402
+ */
403
+ ObjectPageSectionBase.prototype._getAriaLabelledByText = function () {
389
404
  // Each section should be labelled as:
390
405
  // 'titleName' - if the section has a title
391
- // 'Section' - if it does not have a title
406
+ // 'Section' - if it does not have a title or its hidden (for example, showTitle=false)
407
+ var sTitle = this._getShouldLabelTitle() && this._getTitle();
408
+ return sTitle || this.getSectionText();
409
+ };
392
410
 
393
- var sLabel = "";
411
+ ObjectPageSectionBase.prototype._getInvisibleText = function () {
412
+ if (!this._oInvisibleText) {
413
+ this._oInvisibleText = new InvisibleText();
414
+ this._oInvisibleText.toStatic();
415
+ }
394
416
 
395
- sLabel = this._getTitle() || this.getSectionText();
417
+ return this._oInvisibleText;
418
+ };
396
419
 
397
- return new InvisibleText({
398
- text: sLabel
399
- }).toStatic();
420
+ /**
421
+ * Returns a boolean value indicating whether the title should be added to the section's aria label.
422
+ * Aware of whether the subsection is promoted or not.
423
+ *
424
+ * @returns {boolean} true if title should be part of the label
425
+ * @private
426
+ */
427
+ ObjectPageSectionBase.prototype._getShouldLabelTitle = function () {
428
+ return this.getShowTitle ? this.getShowTitle() : true;
400
429
  };
401
430
 
402
431
  /**
@@ -592,7 +621,7 @@ sap.ui.define([
592
621
  this.setProperty("title", sValue, bSuppressInvalidate);
593
622
  this._notifyObjectPageLayout();
594
623
 
595
- this.setInvisibleTextLabelValue(sValue);
624
+ this.updateInvisibleTextLabelValue();
596
625
 
597
626
  return this;
598
627
  };
@@ -329,6 +329,26 @@ sap.ui.define([
329
329
  return ObjectPageSubSection._getLibraryResourceBundle().getText("SUBSECTION_CONTROL_NAME");
330
330
  };
331
331
 
332
+ /**
333
+ * @override
334
+ * @private
335
+ */
336
+ ObjectPageSubSection.prototype._getShouldLabelTitle = function () {
337
+ if (this._getUseTitleOnTheLeft()) {
338
+ // in case layout is "TitleOnTheLeft", the title of promoted section
339
+ // is visible and should be labeled if showTitle is true
340
+ return this.getShowTitle();
341
+ }
342
+
343
+ if (this._sBorrowedTitleDomId) {
344
+ // in case section is promoted the title is not displayed
345
+ // on the subsection level - we don't need to include it in the aria label
346
+ return false;
347
+ }
348
+
349
+ return this.getShowTitle();
350
+ };
351
+
332
352
  /**
333
353
  * Returns Title DOM ID of the Title of this SubSection
334
354
  * @returns {string|boolean} DOM ID
@@ -25,7 +25,7 @@ sap.ui.define([
25
25
  * @constructor
26
26
  * @alias sap.uxap.changeHandler.AddIFrameObjectPageLayout
27
27
  * @author SAP SE
28
- * @version 1.108.7
28
+ * @version 1.108.9
29
29
  * @since 1.75
30
30
  * @experimental Since 1.75
31
31
  */
@@ -13,7 +13,7 @@ sap.ui.define(["sap/ui/fl/changeHandler/MoveControls", "sap/ui/core/Core", "sap/
13
13
  * @constructor
14
14
  * @alias sap.uxap.changeHandler.MoveObjectPageSection
15
15
  * @author SAP SE
16
- * @version 1.108.7
16
+ * @version 1.108.9
17
17
  * @experimental Since 1.54
18
18
  */
19
19
 
@@ -21,7 +21,7 @@ sap.ui.define([
21
21
  * @constructor
22
22
  * @alias sap.uxap.changeHandler.RenameObjectPageSection
23
23
  * @author SAP SE
24
- * @version 1.108.7
24
+ * @version 1.108.9
25
25
  * @experimental Since 1.50
26
26
  */
27
27
 
@@ -25,7 +25,7 @@ sap.ui.define([
25
25
  * @namespace
26
26
  * @alias sap.uxap
27
27
  * @author SAP SE
28
- * @version 1.108.7
28
+ * @version 1.108.9
29
29
  * @since 1.36
30
30
  * @public
31
31
  */
@@ -68,7 +68,7 @@ sap.ui.define([
68
68
  "sap.uxap.ObjectPageHeaderLayoutData",
69
69
  "sap.uxap.ObjectPageLazyLoader"
70
70
  ],
71
- version: "1.108.7",
71
+ version: "1.108.9",
72
72
  extensions: {
73
73
  flChangeHandlers: {
74
74
  "sap.uxap.ObjectPageHeader": "sap/uxap/flexibility/ObjectPageHeader",
@@ -39,7 +39,7 @@ TOOLTIP_OP_CHANGES_MARK_VALUE=Ungesicherte \u00C4nderungen
39
39
 
40
40
  TOOLTIP_OP_EXPAND_HEADER_BTN=Kopfdaten expandieren
41
41
 
42
- TOOLTIP_OP_SHOW_SIDE_CONTENT=Seitenbereich \u00F6ffnen
42
+ TOOLTIP_OP_SHOW_SIDE_CONTENT=Seiten-Panel \u00F6ffnen
43
43
 
44
44
  ROOT_ARIA_LABEL_WITHOUT_TITLE=Objektdetails
45
45
 
@@ -31,9 +31,9 @@ TOOLTIP_OP_LOCK_MARK_VALUE=Bloqueado
31
31
 
32
32
  TOOLTIP_OP_OVERFLOW_BTN=M\u00E1s
33
33
 
34
- TOOLTIP_OP_SCROLL_LEFT_ARROW=Pasar p\u00E1ginas hacia la izquierda
34
+ TOOLTIP_OP_SCROLL_LEFT_ARROW=Desplazar hacia la izquierda
35
35
 
36
- TOOLTIP_OP_SCROLL_RIGHT_ARROW=Pasar p\u00E1ginas hacia la derecha
36
+ TOOLTIP_OP_SCROLL_RIGHT_ARROW=Desplazar hacia la derecha
37
37
 
38
38
  TOOLTIP_OP_CHANGES_MARK_VALUE=Modificaciones no grabadas
39
39