@openui5/sap.ui.table 1.91.0 → 1.93.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 (49) hide show
  1. package/.reuse/dep5 +46 -0
  2. package/THIRDPARTY.txt +59 -1
  3. package/package.json +3 -3
  4. package/src/sap/ui/table/.library +1 -1
  5. package/src/sap/ui/table/AnalyticalColumn.js +2 -2
  6. package/src/sap/ui/table/AnalyticalColumnMenu.js +1 -1
  7. package/src/sap/ui/table/AnalyticalTable.js +2 -1
  8. package/src/sap/ui/table/Column.js +2 -2
  9. package/src/sap/ui/table/ColumnMenu.js +1 -1
  10. package/src/sap/ui/table/CreationRow.js +1 -1
  11. package/src/sap/ui/table/Row.js +1 -1
  12. package/src/sap/ui/table/RowAction.js +1 -1
  13. package/src/sap/ui/table/RowActionItem.js +1 -1
  14. package/src/sap/ui/table/RowSettings.js +1 -1
  15. package/src/sap/ui/table/Table.js +5 -7
  16. package/src/sap/ui/table/TablePersoController.js +1 -1
  17. package/src/sap/ui/table/TreeTable.js +1 -1
  18. package/src/sap/ui/table/extensions/Accessibility.js +31 -6
  19. package/src/sap/ui/table/extensions/AccessibilityRender.js +1 -1
  20. package/src/sap/ui/table/extensions/DragAndDrop.js +1 -1
  21. package/src/sap/ui/table/extensions/ExtensionBase.js +1 -1
  22. package/src/sap/ui/table/extensions/Keyboard.js +1 -1
  23. package/src/sap/ui/table/extensions/KeyboardDelegate.js +28 -13
  24. package/src/sap/ui/table/extensions/Pointer.js +3 -3
  25. package/src/sap/ui/table/extensions/Scrolling.js +7 -8
  26. package/src/sap/ui/table/extensions/Synchronization.js +1 -1
  27. package/src/sap/ui/table/library.js +11 -10
  28. package/src/sap/ui/table/messagebundle_de.properties +1 -1
  29. package/src/sap/ui/table/plugins/BindingSelection.js +1 -1
  30. package/src/sap/ui/table/plugins/MultiSelectionPlugin.js +2 -2
  31. package/src/sap/ui/table/plugins/PluginBase.js +2 -2
  32. package/src/sap/ui/table/plugins/SelectionModelSelection.js +26 -4
  33. package/src/sap/ui/table/plugins/SelectionPlugin.js +1 -1
  34. package/src/sap/ui/table/plugins/V4Aggregation.js +2 -2
  35. package/src/sap/ui/table/rowmodes/AutoRowMode.js +1 -1
  36. package/src/sap/ui/table/rowmodes/FixedRowMode.js +1 -1
  37. package/src/sap/ui/table/rowmodes/InteractiveRowMode.js +1 -1
  38. package/src/sap/ui/table/rowmodes/RowMode.js +1 -1
  39. package/src/sap/ui/table/rowmodes/VariableRowMode.js +1 -1
  40. package/src/sap/ui/table/themes/base/Cell.less +14 -14
  41. package/src/sap/ui/table/themes/base/Grouping.less +18 -3
  42. package/src/sap/ui/table/themes/base/Table.less +1 -2
  43. package/src/sap/ui/table/themes/base/library.source.less +3 -2
  44. package/src/sap/ui/table/utils/TableUtils.js +4 -4
  45. package/src/sap/ui/table/utils/_BindingUtils.js +1 -1
  46. package/src/sap/ui/table/utils/_ColumnUtils.js +1 -1
  47. package/src/sap/ui/table/utils/_GroupingUtils.js +3 -1
  48. package/src/sap/ui/table/utils/_HookUtils.js +4 -1
  49. package/src/sap/ui/table/utils/_MenuUtils.js +1 -1
@@ -1570,6 +1570,10 @@ sap.ui.define([
1570
1570
  }
1571
1571
  },
1572
1572
 
1573
+ onTotalRowCountChanged: function() {
1574
+ VerticalScrollingHelper.adjustToTotalRowCount(this);
1575
+ },
1576
+
1573
1577
  adjustToTotalRowCount: function(oTable) {
1574
1578
  var oScrollExtension = oTable._getScrollExtension();
1575
1579
 
@@ -2159,7 +2163,7 @@ sap.ui.define([
2159
2163
  * @class Extension for sap.ui.table.Table which handles scrolling.
2160
2164
  * @extends sap.ui.table.extensions.ExtensionBase
2161
2165
  * @author SAP SE
2162
- * @version 1.91.0
2166
+ * @version 1.93.2
2163
2167
  * @constructor
2164
2168
  * @private
2165
2169
  * @alias sap.ui.table.extensions.Scrolling
@@ -2207,6 +2211,7 @@ sap.ui.define([
2207
2211
  HorizontalScrollingHelper.addEventListeners(oTable);
2208
2212
  VerticalScrollingHelper.addEventListeners(oTable);
2209
2213
  ScrollingHelper.addEventListeners(oTable);
2214
+ TableUtils.Hook.register(oTable, TableUtils.Hook.Keys.Table.TotalRowCountChanged, VerticalScrollingHelper.onTotalRowCountChanged, oTable);
2210
2215
  },
2211
2216
 
2212
2217
  /**
@@ -2219,6 +2224,7 @@ sap.ui.define([
2219
2224
  HorizontalScrollingHelper.removeEventListeners(oTable);
2220
2225
  VerticalScrollingHelper.removeEventListeners(oTable);
2221
2226
  ScrollingHelper.removeEventListeners(oTable);
2227
+ TableUtils.Hook.deregister(oTable, TableUtils.Hook.Keys.Table.TotalRowCountChanged, VerticalScrollingHelper.onTotalRowCountChanged, oTable);
2222
2228
  },
2223
2229
 
2224
2230
  /**
@@ -2543,13 +2549,6 @@ sap.ui.define([
2543
2549
  }
2544
2550
  };
2545
2551
 
2546
- /**
2547
- * Adjusts the scrollbar and the scroll position to the total row count. Expects that rows will be updated.
2548
- */
2549
- ScrollExtension.prototype.adjustToTotalRowCount = function() {
2550
- VerticalScrollingHelper.adjustToTotalRowCount(this.getTable());
2551
- };
2552
-
2553
2552
  /**
2554
2553
  * Restores the vertical scroll position.
2555
2554
  */
@@ -142,7 +142,7 @@ sap.ui.define([
142
142
  * @class Extension for sap.ui.table.Table that allows synchronization with a table.
143
143
  * @extends sap.ui.table.extensions.ExtensionBase
144
144
  * @author SAP SE
145
- * @version 1.91.0
145
+ * @version 1.93.2
146
146
  * @constructor
147
147
  * @private
148
148
  * @alias sap.ui.table.extensions.Synchronization
@@ -17,7 +17,7 @@ sap.ui.define(['sap/ui/core/Core', 'sap/ui/model/TreeAutoExpandMode',
17
17
  // delegate further initialization of this library to the Core
18
18
  sap.ui.getCore().initLibrary({
19
19
  name : "sap.ui.table",
20
- version: "1.91.0",
20
+ version: "1.93.2",
21
21
  dependencies : ["sap.ui.core","sap.ui.unified"],
22
22
  designtime: "sap/ui/table/designtime/library.designtime",
23
23
  types: [
@@ -74,7 +74,8 @@ sap.ui.define(['sap/ui/core/Core', 'sap/ui/model/TreeAutoExpandMode',
74
74
  * @namespace
75
75
  * @alias sap.ui.table
76
76
  * @author SAP SE
77
- * @version 1.91.0
77
+ * @version 1.93.2
78
+ * @since 0.8
78
79
  * @public
79
80
  */
80
81
  var thisLib = sap.ui.table;
@@ -82,7 +83,7 @@ sap.ui.define(['sap/ui/core/Core', 'sap/ui/model/TreeAutoExpandMode',
82
83
  /**
83
84
  * Navigation mode of the table
84
85
  *
85
- * @version 1.91.0
86
+ * @version 1.93.2
86
87
  * @enum {string}
87
88
  * @public
88
89
  * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel
@@ -110,7 +111,7 @@ sap.ui.define(['sap/ui/core/Core', 'sap/ui/model/TreeAutoExpandMode',
110
111
  /**
111
112
  * Row Action types.
112
113
  *
113
- * @version 1.91.0
114
+ * @version 1.93.2
114
115
  * @enum {string}
115
116
  * @public
116
117
  * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel
@@ -141,7 +142,7 @@ sap.ui.define(['sap/ui/core/Core', 'sap/ui/model/TreeAutoExpandMode',
141
142
  /**
142
143
  * Selection behavior of the table
143
144
  *
144
- * @version 1.91.0
145
+ * @version 1.93.2
145
146
  * @enum {string}
146
147
  * @public
147
148
  * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel
@@ -172,7 +173,7 @@ sap.ui.define(['sap/ui/core/Core', 'sap/ui/model/TreeAutoExpandMode',
172
173
  /**
173
174
  * Selection mode of the table
174
175
  *
175
- * @version 1.91.0
176
+ * @version 1.93.2
176
177
  * @enum {string}
177
178
  * @public
178
179
  * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel
@@ -210,7 +211,7 @@ sap.ui.define(['sap/ui/core/Core', 'sap/ui/model/TreeAutoExpandMode',
210
211
  /**
211
212
  * Sort order of a column
212
213
  *
213
- * @version 1.91.0
214
+ * @version 1.93.2
214
215
  * @enum {string}
215
216
  * @public
216
217
  * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel
@@ -235,7 +236,7 @@ sap.ui.define(['sap/ui/core/Core', 'sap/ui/model/TreeAutoExpandMode',
235
236
  /**
236
237
  * VisibleRowCountMode of the table
237
238
  *
238
- * @version 1.91.0
239
+ * @version 1.93.2
239
240
  * @enum {string}
240
241
  * @public
241
242
  * @ui5-metamodel This enumeration also will be described in the UI5 (legacy) designtime metamodel
@@ -267,7 +268,7 @@ sap.ui.define(['sap/ui/core/Core', 'sap/ui/model/TreeAutoExpandMode',
267
268
  *
268
269
  * Contains IDs of shared DOM references, which should be accessible to inheriting controls via getDomRef() function.
269
270
  *
270
- * @version 1.91.0
271
+ * @version 1.93.2
271
272
  * @enum {string}
272
273
  * @public
273
274
  */
@@ -365,7 +366,7 @@ sap.ui.define(['sap/ui/core/Core', 'sap/ui/model/TreeAutoExpandMode',
365
366
  *
366
367
  * This is an alias for {@link sap.ui.model.TreeAutoExpandMode} and kept for compatibility reasons.
367
368
  *
368
- * @version 1.91.0
369
+ * @version 1.93.2
369
370
  * @typedef {sap.ui.model.TreeAutoExpandMode}
370
371
  * @public
371
372
  */
@@ -40,7 +40,7 @@ TBL_NO_COLUMNS=Es gibt gerade keine sichtbaren Spalten in der Tabelle. Bitte w\u
40
40
 
41
41
  TBL_NO_DATA=Keine Daten
42
42
 
43
- TBL_SELECT_ALL=Alles markieren
43
+ TBL_SELECT_ALL=Alle markieren
44
44
  TBL_DESELECT_ALL=Alle Markierungen l\u00F6schen
45
45
 
46
46
  TBL_TOGGLE_EDIT_KEY=Um in eine Tabellenzelle zu springen, F2 dr\u00FCcken
@@ -22,7 +22,7 @@ sap.ui.define([
22
22
  *
23
23
  * @class Implements the selection methods for TreeTable and AnalyticalTable
24
24
  * @extends sap.ui.table.plugins.SelectionPlugin
25
- * @version 1.91.0
25
+ * @version 1.93.2
26
26
  * @constructor
27
27
  * @private
28
28
  * @alias sap.ui.table.plugins.BindingSelection
@@ -114,7 +114,7 @@ sap.ui.define([
114
114
  MultiSelectionPlugin.prototype.init = function() {
115
115
  SelectionPlugin.prototype.init.apply(this, arguments);
116
116
 
117
- var oIcon = new Icon({src: IconPool.getIconURI(TableUtils.ThemeParameters.resetIcon), useIconTooltip: false});
117
+ var oIcon = new Icon({src: IconPool.getIconURI(TableUtils.ThemeParameters.clearSelectionIcon), useIconTooltip: false});
118
118
  oIcon.addStyleClass("sapUiTableSelectClear");
119
119
 
120
120
  this._bLimitReached = false;
@@ -726,7 +726,7 @@ sap.ui.define([
726
726
  };
727
727
 
728
728
  MultiSelectionPlugin.prototype.onThemeChanged = function() {
729
- this.oDeselectAllIcon.setSrc(IconPool.getIconURI(TableUtils.ThemeParameters.resetIcon));
729
+ this.oDeselectAllIcon.setSrc(IconPool.getIconURI(TableUtils.ThemeParameters.clearSelectionIcon));
730
730
  };
731
731
 
732
732
  return MultiSelectionPlugin;
@@ -28,7 +28,7 @@ sap.ui.define([
28
28
  * @extends sap.ui.core.Element
29
29
  *
30
30
  * @author SAP SE
31
- * @version 1.91.0
31
+ * @version 1.93.2
32
32
  *
33
33
  * @private
34
34
  * @experimental Since 1.75
@@ -93,7 +93,7 @@ sap.ui.define([
93
93
  * Determines whether the plugin is applicable to the control.
94
94
  *
95
95
  * @param {sap.ui.core.Control} oControl The control the plugin should be applied to
96
- * @returns {Boolean} Whether it is applicable
96
+ * @returns {boolean} Whether it is applicable
97
97
  * @protected
98
98
  * @virtual
99
99
  */
@@ -14,7 +14,6 @@ sap.ui.define([
14
14
  TableUtils,
15
15
  library
16
16
  ) {
17
-
18
17
  "use strict";
19
18
 
20
19
  var SelectionMode = library.SelectionMode;
@@ -24,7 +23,7 @@ sap.ui.define([
24
23
  *
25
24
  * @class Implements the selection methods for a Table
26
25
  * @extends sap.ui.table.plugins.SelectionPlugin
27
- * @version 1.91.0
26
+ * @version 1.93.2
28
27
  * @constructor
29
28
  * @private
30
29
  * @alias sap.ui.table.plugins.SelectionModelSelection
@@ -76,19 +75,22 @@ sap.ui.define([
76
75
  /**
77
76
  * @inheritDoc
78
77
  */
79
- SelectionModelSelection.prototype.onActivate = function() {
78
+ SelectionModelSelection.prototype.onActivate = function(oTable) {
80
79
  SelectionPlugin.prototype.onActivate.apply(this, arguments);
81
80
  this.oSelectionModel.attachSelectionChanged(this._onSelectionChange, this);
81
+ TableUtils.Hook.register(oTable, TableUtils.Hook.Keys.Table.TotalRowCountChanged, onTotalRowCountChanged, this);
82
+ this._bIgnoreNextTotalRowCountChange = oTable._getTotalRowCount() === 0;
82
83
  };
83
84
 
84
85
  /**
85
86
  * @inheritDoc
86
87
  */
87
- SelectionModelSelection.prototype.onDeactivate = function() {
88
+ SelectionModelSelection.prototype.onDeactivate = function(oTable) {
88
89
  SelectionPlugin.prototype.onDeactivate.apply(this, arguments);
89
90
  this.oSelectionModel.detachSelectionChanged(this._onSelectionChange, this);
90
91
  this.oSelectionModel.clearSelection();
91
92
  detachFromBinding(this, this.getTableBinding());
93
+ TableUtils.Hook.deregister(oTable, TableUtils.Hook.Keys.Table.TotalRowCountChanged, onTotalRowCountChanged, this);
92
94
  };
93
95
 
94
96
  /**
@@ -308,6 +310,12 @@ sap.ui.define([
308
310
  */
309
311
  SelectionModelSelection.prototype.onTableRowsBound = function(oBinding) {
310
312
  SelectionPlugin.prototype.onTableRowsBound.apply(this, arguments);
313
+ if (!this.hasOwnProperty("_bIgnoreNextTotalRowCountChange")) {
314
+ this._bIgnoreNextTotalRowCountChange = true;
315
+ }
316
+ if (!this.getTable()._bContextsAvailable) {
317
+ this._bWaitForBindingChange = true;
318
+ }
311
319
  attachToBinding(this, oBinding);
312
320
  };
313
321
 
@@ -344,7 +352,21 @@ sap.ui.define([
344
352
  if (sReason === "sort" || sReason === "filter") {
345
353
  this.clearSelection();
346
354
  }
355
+
356
+ if (this._bWaitForBindingChange) {
357
+ this._bIgnoreNextTotalRowCountChange = true;
358
+ delete this._bWaitForBindingChange;
359
+ }
347
360
  };
348
361
 
362
+ function onTotalRowCountChanged() {
363
+ if (!this._bIgnoreNextTotalRowCountChange) {
364
+ // If rows are added or removed, the index-based selection of the SelectionModel is invalid and needs to be cleared.
365
+ // The initial change is ignored for compatibility, so it is possible to select something before the initial rows update is done.
366
+ this.clearSelection();
367
+ }
368
+ delete this._bIgnoreNextTotalRowCountChange;
369
+ }
370
+
349
371
  return SelectionModelSelection;
350
372
  });
@@ -29,7 +29,7 @@ sap.ui.define([
29
29
  * @class Implements the selection methods for a table.
30
30
  * @extends sap.ui.core.Element
31
31
  * @author SAP SE
32
- * @version 1.91.0
32
+ * @version 1.93.2
33
33
  * @public
34
34
  * @since 1.64
35
35
  * @experimental As of version 1.64
@@ -32,7 +32,7 @@ sap.ui.define([
32
32
  * @class TODO (don't forget to document fixed row count restrictions because fixed rows are set by this plugin)
33
33
  * @extends sap.ui.table.plugins.PluginBase
34
34
  * @author SAP SE
35
- * @version 1.91.0
35
+ * @version 1.93.2
36
36
  * @private
37
37
  * @since 1.76
38
38
  * @experimental
@@ -77,7 +77,7 @@ sap.ui.define([
77
77
  V4Aggregation.prototype.activate = function() {
78
78
  var oBinding = this.getTableBinding();
79
79
 
80
- if (oBinding && !oBinding.getModel().isA("sap.ui.model.odata.v4.ODataModel")) {
80
+ if (oBinding && !oBinding.isA("sap.ui.model.odata.v4.ODataListBinding")) {
81
81
  return;
82
82
  }
83
83
 
@@ -35,7 +35,7 @@ sap.ui.define([
35
35
  * @ui5-restricted sap.ui.mdc
36
36
  *
37
37
  * @author SAP SE
38
- * @version 1.91.0
38
+ * @version 1.93.2
39
39
  * @ui5-metamodel This control/element also will be described in the UI5 (legacy) designtime metamodel
40
40
  */
41
41
  var AutoRowMode = RowMode.extend("sap.ui.table.rowmodes.AutoRowMode", /** @lends sap.ui.table.rowmodes.AutoRowMode.prototype */ {
@@ -29,7 +29,7 @@ sap.ui.define([
29
29
  * @ui5-restricted sap.ui.mdc
30
30
  *
31
31
  * @author SAP SE
32
- * @version 1.91.0
32
+ * @version 1.93.2
33
33
  *
34
34
  * @ui5-metamodel This control/element also will be described in the UI5 (legacy) designtime metamodel
35
35
  */
@@ -33,7 +33,7 @@ sap.ui.define([
33
33
  * @ui5-restricted sap.ui.mdc
34
34
  *
35
35
  * @author SAP SE
36
- * @version 1.91.0
36
+ * @version 1.93.2
37
37
  *
38
38
  * @ui5-metamodel This control/element also will be described in the UI5 (legacy) designtime metamodel
39
39
  */
@@ -36,7 +36,7 @@ sap.ui.define([
36
36
  * @ui5-restricted sap.ui.mdc
37
37
  *
38
38
  * @author SAP SE
39
- * @version 1.91.0
39
+ * @version 1.93.2
40
40
  * @ui5-metamodel This control/element also will be described in the UI5 (legacy) designtime metamodel
41
41
  */
42
42
  var RowMode = Element.extend("sap.ui.table.rowmodes.RowMode", /** @lends sap.ui.table.rowmodes.RowMode.prototype */ {
@@ -23,7 +23,7 @@ sap.ui.define([
23
23
  * @extends sap.ui.table.rowmodes.RowMode
24
24
  *
25
25
  * @author SAP SE
26
- * @version 1.91.0
26
+ * @version 1.93.2
27
27
  *
28
28
  * @constructor
29
29
  * @private
@@ -3,8 +3,8 @@
3
3
  /* Base theme */
4
4
  /* ========================== */
5
5
 
6
- @_sap_ui_table_Cell_FocusOutlineOffset: -1px;
7
- @_sap_ui_table_Cell_FocusOutlineOffsetInZoomedChrome: -2px;
6
+ @_sap_ui_table_Cell_FocusOutlineOffset: -@sapUiContentFocusWidth;
7
+ @_sap_ui_table_Cell_FocusOutlineOffsetInZoomedChrome: calc(-@sapUiContentFocusWidth ~"- 0.0625rem");
8
8
  @_sap_ui_table_Cell_Padding: 0 0.5rem;
9
9
  @_sap_ui_table_Cell_TouchMenuIconSize: 1.375rem;
10
10
  @_sap_ui_table_Cell_ColumnIconSize: 0.75rem;
@@ -17,16 +17,19 @@
17
17
  * Focus outline
18
18
  */
19
19
  .sapUiTableCell:focus {
20
- outline-offset: @_sap_ui_table_Cell_FocusOutlineOffset;
21
- outline: @_sap_ui_table_FocusOutlineWidth dotted @sapUiContentFocusColor;
20
+ outline: none;
22
21
 
23
- .sapUiTableZoomout & {
24
- outline-offset: @_sap_ui_table_Cell_FocusOutlineOffsetInZoomedChrome;
25
- }
22
+ &::before {
23
+ content: "";
24
+ position: absolute;
25
+ inset: 0;
26
+ pointer-events: none;
27
+ outline: @_sap_ui_table_FocusOutlineWidth @sapUiContentFocusStyle @sapUiContentFocusColor;
28
+ outline-offset: @_sap_ui_table_Cell_FocusOutlineOffset;
26
29
 
27
- // To show the bottom focus outline of row selection cells that would otherwise be hidden by the top border of the selection cell below.
28
- .sapUiTableGroupMode &.sapUiTableRowSelectionCell:focus {
29
- z-index: 1;
30
+ .sapUiTableZoomout & {
31
+ outline-offset: @_sap_ui_table_Cell_FocusOutlineOffsetInZoomedChrome;
32
+ }
30
33
  }
31
34
  }
32
35
 
@@ -43,6 +46,7 @@
43
46
  * Borders
44
47
  */
45
48
  .sapUiTableCell {
49
+ position: relative;
46
50
  box-sizing: border-box;
47
51
  border-right: @_sap_ui_table_BaseBorderWidth solid @sapUiListVerticalBorderColor;
48
52
  border-bottom: @_sap_ui_table_BaseBorderWidth solid @sapUiListBorderColor;
@@ -124,10 +128,6 @@
124
128
 
125
129
  .sapUiTableRowSel > & {
126
130
  border-bottom-color: @_sap_ui_table_Cell_BorderColorSelected;
127
-
128
- &:focus {
129
- border-bottom-color: transparent;
130
- }
131
131
  }
132
132
 
133
133
  .sapUiTableSummaryRow > & {
@@ -29,7 +29,7 @@
29
29
  }
30
30
 
31
31
  &:focus {
32
- outline: @_sap_ui_table_Grouping_GroupOutlineWidth dotted @sapUiContentFocusColor;
32
+ outline: @_sap_ui_table_Grouping_GroupOutlineWidth @sapUiContentFocusStyle @sapUiContentFocusColor;
33
33
  outline-offset: -2px;
34
34
  }
35
35
  }
@@ -42,7 +42,7 @@
42
42
  position: absolute;
43
43
  left: 1px;
44
44
  top: @_sap_ui_table_Grouping_GroupOutlineWidth;
45
- bottom: 0;
45
+ bottom: @_sap_ui_table_Grouping_GroupOutlineWidth;
46
46
  white-space: nowrap;
47
47
  font-weight: normal;
48
48
  color: @sapUiListTextColor;
@@ -80,6 +80,7 @@
80
80
  text-align: center;
81
81
  vertical-align: middle;
82
82
  margin-left: -2px;
83
+ margin-right: 2px;
83
84
  }
84
85
 
85
86
  .sapUiSizeCozy .sapUiTableGroupIcon::before {
@@ -121,11 +122,21 @@ html[dir=rtl] {
121
122
 
122
123
  .sapUiTableGroupHeaderRow > .sapUiTableRowSelectionCell:focus .sapUiTableGroupIcon {
123
124
  outline-width: @_sap_ui_table_Grouping_GroupOutlineWidth;
124
- outline-style: dotted;
125
+ outline-style: @sapUiContentFocusStyle;
125
126
  outline-offset: 0;
126
127
  outline-color: @sapUiContentFocusColor;
127
128
  }
128
129
 
130
+ .sapUiTableGroupHeaderRow > .sapUiTableRowSelectionCell:focus::before {
131
+ outline: none;
132
+ }
133
+
134
+ .sapUiTableGroupHeaderRow > .sapUiTableCell.sapUiTableCellFirst:focus::before,
135
+ .sapUiTableGroupMode .sapUiTableRowIndented > .sapUiTableCell.sapUiTableCellFirst:focus::before {
136
+ z-index: 2;
137
+ left: var(--CalculatedGroupIndent, 0);
138
+ }
139
+
129
140
  // Override row background and cell borders in group header rows.
130
141
  .sapUiTableGroupHeaderRow {
131
142
  &.sapUiTableRow {
@@ -181,6 +192,10 @@ html[dir=rtl] {
181
192
  pointer-events: none;
182
193
  }
183
194
 
195
+ .sapUiTableRowHidden > .sapUiTableCell > .sapUiTableGroupShield {
196
+ display: block;
197
+ }
198
+
184
199
  .sapUiTableGroupHeaderRow > .sapUiTableRowSelectionCell:focus {
185
200
  outline: 0;
186
201
  }
@@ -183,7 +183,7 @@
183
183
  .sapUiTableCtrlEmpty:focus,
184
184
  .sapUiTableCnt > .sapUiLocalBusyIndicator:focus {
185
185
  outline-width: @_sap_ui_table_FocusOutlineWidth;
186
- outline-style: dotted;
186
+ outline-style: @sapUiContentFocusStyle;
187
187
  outline-offset: -3px;
188
188
  outline-color: @sapUiContentFocusColor;
189
189
  }
@@ -228,7 +228,6 @@
228
228
  pointer-events: none;
229
229
  -webkit-user-select: none;
230
230
  -moz-user-select: none;
231
- -ms-user-select: none;
232
231
  user-select: none;
233
232
  }
234
233
 
@@ -43,9 +43,10 @@
43
43
 
44
44
  @_sap_ui_table_NavigationIcon: navigation-right-arrow;
45
45
  @_sap_ui_table_DeleteIcon: sys-cancel;
46
- @_sap_ui_table_ResetIcon: undo;
46
+ @_sap_ui_table_ClearSelectionIcon: clear-all;
47
47
 
48
- @_sap_ui_table_FocusOutlineWidth: 1px;
48
+ /*TBD: Table specific parameter should be removed and replaced with sapUiContentFocusWidth*/
49
+ @_sap_ui_table_FocusOutlineWidth: @sapUiContentFocusWidth;
49
50
 
50
51
  @import "Table.less";
51
52
  @import "Row.less";
@@ -140,13 +140,13 @@ sap.ui.define([
140
140
  * @typedef {Object} sap.ui.table.utils.TableUtils.ThemeParameters
141
141
  * @property {string} navigationIcon - Name of the navigation icon.
142
142
  * @property {string} deleteIcon - Name of the delete icon.
143
- * @property {string} resetIcon - Name of the reset icon.
143
+ * @property {string} clearSelectionIcon - Name of the clearSelection icon.
144
144
  * @property {int} navIndicatorWidth - Width of the navigation indicator
145
145
  */
146
146
  var mThemeParameters = {
147
147
  navigationIcon: "navigation-right-arrow",
148
148
  deleteIcon: "sys-cancel",
149
- resetIcon: "undo",
149
+ clearSelectionIcon: "clear-all",
150
150
  navIndicatorWidth: 3
151
151
  };
152
152
 
@@ -209,7 +209,7 @@ sap.ui.define([
209
209
  * Static collection of utility functions related to the sap.ui.table.Table, ...
210
210
  *
211
211
  * @author SAP SE
212
- * @version 1.91.0
212
+ * @version 1.93.2
213
213
  * @namespace
214
214
  * @alias sap.ui.table.utils.TableUtils
215
215
  * @private
@@ -1459,7 +1459,7 @@ sap.ui.define([
1459
1459
 
1460
1460
  mThemeParameters.navigationIcon = ThemeParameters.get("_sap_ui_table_NavigationIcon");
1461
1461
  mThemeParameters.deleteIcon = ThemeParameters.get("_sap_ui_table_DeleteIcon");
1462
- mThemeParameters.resetIcon = ThemeParameters.get("_sap_ui_table_ResetIcon");
1462
+ mThemeParameters.clearSelectionIcon = ThemeParameters.get("_sap_ui_table_ClearSelectionIcon");
1463
1463
  mThemeParameters.navIndicatorWidth = getPixelValue("_sap_ui_table_NavIndicatorWidth");
1464
1464
  },
1465
1465
 
@@ -14,7 +14,7 @@ sap.ui.define([], function() {
14
14
  * Note: Do not access the functions of this helper directly, but via <code>sap.ui.table.utils.TableUtils.Binding...</code>
15
15
  *
16
16
  * @author SAP SE
17
- * @version 1.91.0
17
+ * @version 1.93.2
18
18
  * @namespace
19
19
  * @alias sap.ui.table.utils._BindingUtils
20
20
  * @private
@@ -18,7 +18,7 @@ sap.ui.define([
18
18
  * Note: Do not access the functions of this helper directly, but via <code>sap.ui.table.utils.TableUtils.Column...</code>
19
19
  *
20
20
  * @author SAP SE
21
- * @version 1.91.0
21
+ * @version 1.93.2
22
22
  * @namespace
23
23
  * @alias sap.ui.table.utils._ColumnUtils
24
24
  * @private
@@ -23,7 +23,7 @@ sap.ui.define([
23
23
  * Note: Do not access the functions of this helper directly, but via <code>sap.ui.table.utils.TableUtils.Grouping...</code>
24
24
  *
25
25
  * @author SAP SE
26
- * @version 1.91.0
26
+ * @version 1.93.2
27
27
  * @namespace
28
28
  * @alias sap.ui.table.utils._GroupingUtils
29
29
  * @private
@@ -273,12 +273,14 @@ sap.ui.define([
273
273
  $RowHdr.css(bRTL ? "right" : "left", "");
274
274
  $Shield.css("width", "").css(bRTL ? "margin-right" : "margin-left", "");
275
275
  $FirstCellContentInRow.css(bRTL ? "padding-right" : "padding-left", "");
276
+ $Row.css("--CalculatedGroupIndent", "0");
276
277
  } else {
277
278
  // Apply indent on table row
278
279
  $RowHdr.css(bRTL ? "right" : "left", iIndent + "px");
279
280
  $Shield.css("width", iIndent + "px").css(bRTL ? "margin-right" : "margin-left", ((-1) * iIndent) + "px");
280
281
  $FirstCellContentInRow.css(bRTL ? "padding-right" : "padding-left",
281
282
  (iIndent + 8/* +8px standard padding .sapUiTableCellInner */) + "px");
283
+ $Row.css("--CalculatedGroupIndent", iIndent + "px");
282
284
  }
283
285
  },
284
286
 
@@ -22,7 +22,7 @@ sap.ui.define(["sap/ui/base/DataType", "sap/base/Log"], function(DataType, Log)
22
22
  * - There is no concept for public or protected hooks. Never expose a hook directly, only indirectly as can be seen in the examples.
23
23
  *
24
24
  * @author SAP SE
25
- * @version 1.91.0
25
+ * @version 1.93.2
26
26
  * @namespace
27
27
  * @alias sap.ui.table.utils._HookUtils
28
28
  *
@@ -163,6 +163,9 @@ sap.ui.define(["sap/ui/base/DataType", "sap/base/Log"], function(DataType, Log)
163
163
  {type: validateCellInfo},
164
164
  {type: "class:sap.ui.unified.Menu"}
165
165
  ]
166
+ },
167
+ TotalRowCountChanged: {
168
+ arguments: []
166
169
  }
167
170
  },
168
171
  Row: {
@@ -42,7 +42,7 @@ sap.ui.define([
42
42
  * Note: Do not access the functions of this helper directly, but via <code>sap.ui.table.utils.TableUtils.Menu...</code>
43
43
  *
44
44
  * @author SAP SE
45
- * @version 1.91.0
45
+ * @version 1.93.2
46
46
  * @namespace
47
47
  * @alias sap.ui.table.utils._MenuUtils
48
48
  * @private