@openui5/sap.ui.table 1.124.2 → 1.126.0
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/.reuse/dep5 +9 -4
- package/THIRDPARTY.txt +13 -6
- package/package.json +3 -3
- package/src/sap/ui/table/.library +1 -1
- package/src/sap/ui/table/AnalyticalColumn.js +1 -1
- package/src/sap/ui/table/AnalyticalColumnMenu.js +1 -1
- package/src/sap/ui/table/AnalyticalTable.js +1 -1
- package/src/sap/ui/table/Column.js +34 -7
- package/src/sap/ui/table/ColumnMenu.js +1 -1
- package/src/sap/ui/table/CreationRow.js +1 -1
- package/src/sap/ui/table/Row.js +1 -1
- package/src/sap/ui/table/RowAction.js +1 -1
- package/src/sap/ui/table/RowActionItem.js +1 -1
- package/src/sap/ui/table/RowSettings.js +1 -1
- package/src/sap/ui/table/Table.js +10 -8
- package/src/sap/ui/table/TablePersoController.js +1 -1
- package/src/sap/ui/table/TableRenderer.js +1 -2
- package/src/sap/ui/table/TreeTable.js +1 -1
- package/src/sap/ui/table/extensions/Accessibility.js +2 -2
- package/src/sap/ui/table/extensions/AccessibilityRender.js +1 -1
- package/src/sap/ui/table/extensions/DragAndDrop.js +1 -1
- package/src/sap/ui/table/extensions/ExtensionBase.js +1 -1
- package/src/sap/ui/table/extensions/Keyboard.js +2 -1
- package/src/sap/ui/table/extensions/KeyboardDelegate.js +9 -7
- package/src/sap/ui/table/extensions/Pointer.js +14 -88
- package/src/sap/ui/table/extensions/Scrolling.js +30 -3
- package/src/sap/ui/table/extensions/ScrollingIOS.js +1 -1
- package/src/sap/ui/table/extensions/Synchronization.js +1 -1
- package/src/sap/ui/table/library.js +11 -11
- package/src/sap/ui/table/menus/ColumnHeaderMenuAdapter.js +1 -1
- package/src/sap/ui/table/menus/MobileColumnHeaderMenuAdapter.js +1 -1
- package/src/sap/ui/table/plugins/BindingSelection.js +7 -3
- package/src/sap/ui/table/plugins/MultiSelectionPlugin.js +5 -4
- package/src/sap/ui/table/plugins/ODataV4Selection.js +4 -0
- package/src/sap/ui/table/plugins/PluginBase.js +1 -1
- package/src/sap/ui/table/plugins/SelectionModelSelection.js +6 -2
- package/src/sap/ui/table/plugins/SelectionPlugin.js +1 -1
- package/src/sap/ui/table/plugins/V4Aggregation.js +1 -1
- package/src/sap/ui/table/rowmodes/Auto.js +2 -2
- package/src/sap/ui/table/rowmodes/Fixed.js +2 -2
- package/src/sap/ui/table/rowmodes/Interactive.js +1 -1
- package/src/sap/ui/table/rowmodes/RowMode.js +2 -2
- package/src/sap/ui/table/rowmodes/Variable.js +1 -1
- package/src/sap/ui/table/themes/sap_hcb/base_AnalyticalTable.less +38 -0
- package/src/sap/ui/table/themes/sap_hcb/base_Cell.less +441 -0
- package/src/sap/ui/table/themes/sap_hcb/base_CreationRow.less +83 -0
- package/src/sap/ui/table/themes/sap_hcb/base_DragDrop.less +245 -0
- package/src/sap/ui/table/themes/sap_hcb/base_Grouping.less +223 -0
- package/src/sap/ui/table/themes/sap_hcb/base_Row.less +95 -0
- package/src/sap/ui/table/themes/sap_hcb/base_RowAction.less +52 -0
- package/src/sap/ui/table/themes/sap_hcb/base_RowHighlight.less +80 -0
- package/src/sap/ui/table/themes/sap_hcb/base_RowSelection.less +146 -0
- package/src/sap/ui/table/themes/sap_hcb/base_Scrolling.less +343 -0
- package/src/sap/ui/table/themes/sap_hcb/base_ScrollingIOS.less +18 -0
- package/src/sap/ui/table/themes/sap_hcb/base_Table.less +524 -0
- package/src/sap/ui/table/themes/sap_hcb/library.source.less +65 -1
- package/src/sap/ui/table/utils/TableUtils.js +4 -5
- package/src/sap/ui/table/utils/_BindingUtils.js +1 -1
- package/src/sap/ui/table/utils/_ColumnUtils.js +161 -37
- package/src/sap/ui/table/utils/_GroupingUtils.js +1 -1
- package/src/sap/ui/table/utils/_HookUtils.js +1 -1
- package/src/sap/ui/table/utils/_MenuUtils.js +1 -1
package/.reuse/dep5
CHANGED
|
@@ -50,6 +50,11 @@ Copyright: Mario Heiderich
|
|
|
50
50
|
License: Apache-2.0
|
|
51
51
|
Comment: these files belong to: purify.js
|
|
52
52
|
|
|
53
|
+
Files: src/sap.m/test/sap/m/qunit/_thirdparty/qunit-composite.css src/sap.m/test/sap/m/qunit/_thirdparty/qunit-composite.js
|
|
54
|
+
Copyright: jQuery Foundation and other contributors, https://jquery.org/
|
|
55
|
+
License: MIT
|
|
56
|
+
Comment: these files belong to: QUnit Composite 2.0.0
|
|
57
|
+
|
|
53
58
|
|
|
54
59
|
# Library: sap.ui.codeeditor:
|
|
55
60
|
|
|
@@ -379,13 +384,13 @@ Copyright: 2017 Wei Song and Oliver Nightingale
|
|
|
379
384
|
License: MIT
|
|
380
385
|
Comment: these files belong to: Elasticlunr
|
|
381
386
|
|
|
382
|
-
Files: src/sap.ui.documentation/src/sap/ui/documentation/sdk/thirdparty/DataTables/DataTables-
|
|
383
|
-
Copyright:
|
|
387
|
+
Files: src/sap.ui.documentation/src/sap/ui/documentation/sdk/thirdparty/DataTables/DataTables-2.0.1/*
|
|
388
|
+
Copyright: SpryMedia Ltd
|
|
384
389
|
License: MIT
|
|
385
390
|
Comment: these files belong to: DataTables
|
|
386
391
|
|
|
387
|
-
Files: src/sap.ui.documentation/src/sap/ui/documentation/sdk/thirdparty/DataTables/Buttons-
|
|
388
|
-
Copyright:
|
|
392
|
+
Files: src/sap.ui.documentation/src/sap/ui/documentation/sdk/thirdparty/DataTables/Buttons-3.0.0/*
|
|
393
|
+
Copyright: SpryMedia Ltd
|
|
389
394
|
License: MIT
|
|
390
395
|
Comment: these files belong to: Buttons extension for DataTables
|
|
391
396
|
|
package/THIRDPARTY.txt
CHANGED
|
@@ -12,6 +12,13 @@ License: Apache-2.0
|
|
|
12
12
|
License Text: https://github.com/SAP/openui5/blob/master/LICENSES/Apache-2.0.txt
|
|
13
13
|
Contained in: src/sap.m/src/sap/m/_thirdparty/purify.js
|
|
14
14
|
|
|
15
|
+
Component: QUnit Composite 2.0.0, version: 2.0.0
|
|
16
|
+
Copyright: jQuery Foundation and other contributors, https://jquery.org/
|
|
17
|
+
License: MIT
|
|
18
|
+
License Text: https://github.com/SAP/openui5/blob/master/LICENSES/MIT.txt
|
|
19
|
+
Contained in: src/sap.m/test/sap/m/qunit/_thirdparty/qunit-composite.css
|
|
20
|
+
src/sap.m/test/sap/m/qunit/_thirdparty/qunit-composite.js
|
|
21
|
+
|
|
15
22
|
|
|
16
23
|
Library: sap.ui.codeeditor:
|
|
17
24
|
|
|
@@ -356,17 +363,17 @@ License: MIT
|
|
|
356
363
|
License Text: https://github.com/SAP/openui5/blob/master/LICENSES/MIT.txt
|
|
357
364
|
Contained in: src/sap.ui.documentation/src/sap/ui/documentation/sdk/thirdparty/elasticlunr.js
|
|
358
365
|
|
|
359
|
-
Component: DataTables, version:
|
|
360
|
-
Copyright:
|
|
366
|
+
Component: DataTables, version: 2.0.1
|
|
367
|
+
Copyright: SpryMedia Ltd
|
|
361
368
|
License: MIT
|
|
362
369
|
License Text: https://github.com/SAP/openui5/blob/master/LICENSES/MIT.txt
|
|
363
|
-
Contained in: src/sap.ui.documentation/src/sap/ui/documentation/sdk/thirdparty/DataTables/DataTables-
|
|
370
|
+
Contained in: src/sap.ui.documentation/src/sap/ui/documentation/sdk/thirdparty/DataTables/DataTables-2.0.1/*
|
|
364
371
|
|
|
365
|
-
Component: Buttons extension for DataTables, version:
|
|
366
|
-
Copyright:
|
|
372
|
+
Component: Buttons extension for DataTables, version: 3.0.0
|
|
373
|
+
Copyright: SpryMedia Ltd
|
|
367
374
|
License: MIT
|
|
368
375
|
License Text: https://github.com/SAP/openui5/blob/master/LICENSES/MIT.txt
|
|
369
|
-
Contained in: src/sap.ui.documentation/src/sap/ui/documentation/sdk/thirdparty/DataTables/Buttons-
|
|
376
|
+
Contained in: src/sap.ui.documentation/src/sap/ui/documentation/sdk/thirdparty/DataTables/Buttons-3.0.0/*
|
|
370
377
|
|
|
371
378
|
|
|
372
379
|
Library: sap.ui.integration:
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openui5/sap.ui.table",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.126.0",
|
|
4
4
|
"description": "OpenUI5 UI Library sap.ui.table",
|
|
5
5
|
"author": "SAP SE (https://www.sap.com)",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"url": "https://github.com/SAP/openui5.git"
|
|
15
15
|
},
|
|
16
16
|
"dependencies": {
|
|
17
|
-
"@openui5/sap.ui.core": "1.
|
|
18
|
-
"@openui5/sap.ui.unified": "1.
|
|
17
|
+
"@openui5/sap.ui.core": "1.126.0",
|
|
18
|
+
"@openui5/sap.ui.unified": "1.126.0"
|
|
19
19
|
}
|
|
20
20
|
}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
<copyright>OpenUI5
|
|
7
7
|
* (c) Copyright 2009-2024 SAP SE or an SAP affiliate company.
|
|
8
8
|
* Licensed under the Apache License, Version 2.0 - see LICENSE.txt.</copyright>
|
|
9
|
-
<version>1.
|
|
9
|
+
<version>1.126.0</version>
|
|
10
10
|
|
|
11
11
|
<documentation>Table-like controls, mainly for desktop scenarios.</documentation>
|
|
12
12
|
|
|
@@ -63,7 +63,7 @@ sap.ui.define([
|
|
|
63
63
|
* @class
|
|
64
64
|
* The column allows you to define column specific properties that will be applied when rendering the table.
|
|
65
65
|
* @extends sap.ui.core.Element
|
|
66
|
-
* @version 1.
|
|
66
|
+
* @version 1.126.0
|
|
67
67
|
*
|
|
68
68
|
* @constructor
|
|
69
69
|
* @public
|
|
@@ -261,12 +261,10 @@ sap.ui.define([
|
|
|
261
261
|
headerSpan: {type: "any", group: "Behavior", defaultValue: 1},
|
|
262
262
|
|
|
263
263
|
/**
|
|
264
|
-
* Enables auto-resizing of the column on double
|
|
265
|
-
*
|
|
266
|
-
*
|
|
267
|
-
*
|
|
268
|
-
* sap.ui.commons.TextView, sap.ui.commons.Label, sap.ui.commons.Link and sap.ui.commons.TextField,
|
|
269
|
-
* sap.ui.commons.Checkbox, sap.m.CheckBox</code>
|
|
264
|
+
* Enables auto-resizing of the column on double-clicking the resize bar, if the column is resizable depending on the
|
|
265
|
+
* <code>resizable</code> property.
|
|
266
|
+
* See {@link #autoResize} for details about the auto-resize feature.
|
|
267
|
+
*
|
|
270
268
|
* @since 1.21.1
|
|
271
269
|
*/
|
|
272
270
|
autoResizable: {type: "boolean", group: "Behavior", defaultValue: false}
|
|
@@ -1293,6 +1291,35 @@ sap.ui.define([
|
|
|
1293
1291
|
return CellMap.get(oCell) || null;
|
|
1294
1292
|
};
|
|
1295
1293
|
|
|
1294
|
+
/**
|
|
1295
|
+
* The column is resized to the width of the widest cell content that is currently displayed.
|
|
1296
|
+
* This can be the content of a column header cell, or a data cell.
|
|
1297
|
+
* Only rows that are currently scrolled into view are taken into consideration.
|
|
1298
|
+
* The content of cells that span multiple columns is not taken into consideration, for example, if the <code>headerSpan</code> property is used.
|
|
1299
|
+
*
|
|
1300
|
+
* The width might not be accurate if the cell content is not rendered yet, for example, because the data is still being loaded.
|
|
1301
|
+
*
|
|
1302
|
+
* This behavior only works if the cell content is one of the following controls:
|
|
1303
|
+
* <ul>
|
|
1304
|
+
* <li><code>sap.m.Text</code></li>
|
|
1305
|
+
* <li><code>sap.m.Label</code></li>
|
|
1306
|
+
* <li><code>sap.m.Link</code></li>
|
|
1307
|
+
* <li><code>sap.m.CheckBox</code></li>
|
|
1308
|
+
* </ul>
|
|
1309
|
+
* Otherwise, the width might not be accurate either. This includes cases where the listed control is wrapped in another control.
|
|
1310
|
+
*
|
|
1311
|
+
* @throws {Error} If the column is not rendered
|
|
1312
|
+
* @public
|
|
1313
|
+
* @since 1.125
|
|
1314
|
+
*/
|
|
1315
|
+
Column.prototype.autoResize = function() {
|
|
1316
|
+
if (!this.getDomRef()) {
|
|
1317
|
+
throw new Error("Column is not rendered");
|
|
1318
|
+
}
|
|
1319
|
+
|
|
1320
|
+
TableUtils.Column.autoResizeColumn(this);
|
|
1321
|
+
};
|
|
1322
|
+
|
|
1296
1323
|
return Column;
|
|
1297
1324
|
|
|
1298
1325
|
});
|
package/src/sap/ui/table/Row.js
CHANGED
|
@@ -35,7 +35,7 @@ sap.ui.define([
|
|
|
35
35
|
* If more action items are available as the available space allows to display an overflow mechanism is provided.
|
|
36
36
|
* This control must only be used in the context of the <code>sap.ui.table.Table</code> control to define row actions.
|
|
37
37
|
* @extends sap.ui.core.Control
|
|
38
|
-
* @version 1.
|
|
38
|
+
* @version 1.126.0
|
|
39
39
|
*
|
|
40
40
|
* @constructor
|
|
41
41
|
* @public
|
|
@@ -27,7 +27,7 @@ sap.ui.define([
|
|
|
27
27
|
* The <code>RowSettings</code> control allows you to configure a row.
|
|
28
28
|
* You can only use this control in the context of the <code>sap.ui.table.Table</code> control to define row settings.
|
|
29
29
|
* @extends sap.ui.core.Element
|
|
30
|
-
* @version 1.
|
|
30
|
+
* @version 1.126.0
|
|
31
31
|
*
|
|
32
32
|
* @constructor
|
|
33
33
|
* @public
|
|
@@ -100,7 +100,7 @@ sap.ui.define([
|
|
|
100
100
|
* the data model and binding being used.
|
|
101
101
|
* </p>
|
|
102
102
|
* @extends sap.ui.core.Control
|
|
103
|
-
* @version 1.
|
|
103
|
+
* @version 1.126.0
|
|
104
104
|
*
|
|
105
105
|
* @constructor
|
|
106
106
|
* @public
|
|
@@ -465,7 +465,7 @@ sap.ui.define([
|
|
|
465
465
|
* If the creation row is set, the busy indicator will no longer cover the horizontal scrollbar, even if the creation row is invisible.
|
|
466
466
|
*
|
|
467
467
|
* @private
|
|
468
|
-
* @ui5-
|
|
468
|
+
* @ui5-private sap.ui.mdc
|
|
469
469
|
*/
|
|
470
470
|
creationRow: {type: "sap.ui.core.Control", multiple: false, visibility: "hidden"},
|
|
471
471
|
|
|
@@ -480,7 +480,7 @@ sap.ui.define([
|
|
|
480
480
|
* The control that is shown in case the Table has no visible columns.
|
|
481
481
|
*
|
|
482
482
|
* @private
|
|
483
|
-
* @ui5-
|
|
483
|
+
* @ui5-private sap.ui.mdc, sap.ui.comp
|
|
484
484
|
*/
|
|
485
485
|
_noColumnsMessage: {type: "sap.ui.core.Control", multiple: false, visibility: "hidden"},
|
|
486
486
|
|
|
@@ -2628,9 +2628,15 @@ sap.ui.define([
|
|
|
2628
2628
|
* @param {int} iColIndex The index of the column in the list of visible columns.
|
|
2629
2629
|
* @function
|
|
2630
2630
|
* @public
|
|
2631
|
+
* @deprecated As of version 1.125, replaced by {@link sap.ui.table.Column#autoResize}
|
|
2631
2632
|
*/
|
|
2632
2633
|
Table.prototype.autoResizeColumn = function(iColIndex) {
|
|
2633
|
-
this.
|
|
2634
|
+
const aVisibleColumns = this._getVisibleColumns();
|
|
2635
|
+
const oColumn = aVisibleColumns[iColIndex];
|
|
2636
|
+
|
|
2637
|
+
if (oColumn?.getResizable() && oColumn?.getAutoResizable()) {
|
|
2638
|
+
oColumn.autoResize();
|
|
2639
|
+
}
|
|
2634
2640
|
};
|
|
2635
2641
|
|
|
2636
2642
|
// =============================================================================
|
|
@@ -3175,10 +3181,6 @@ sap.ui.define([
|
|
|
3175
3181
|
|
|
3176
3182
|
$SelectAll.toggleClass("sapUiTableSelAll", !bAllRowsSelected);
|
|
3177
3183
|
this._getAccExtension().setSelectAllState(bAllRowsSelected);
|
|
3178
|
-
|
|
3179
|
-
const sSelectAllResourceTextID = bAllRowsSelected ? "TBL_DESELECT_ALL" : "TBL_SELECT_ALL";
|
|
3180
|
-
const sTitle = TableUtils.getResourceText(sSelectAllResourceTextID);
|
|
3181
|
-
$SelectAll.attr('title', sTitle);
|
|
3182
3184
|
} else if (mRenderConfig.headerSelector.type === "custom") {
|
|
3183
3185
|
$SelectAll.toggleClass("sapUiTableSelAllDisabled", !mRenderConfig.headerSelector.enabled);
|
|
3184
3186
|
|
|
@@ -436,8 +436,7 @@ sap.ui.define([
|
|
|
436
436
|
const bAllRowsSelected = mRenderConfig.headerSelector.selected;
|
|
437
437
|
|
|
438
438
|
if (mRenderConfig.headerSelector.type === "toggle") {
|
|
439
|
-
|
|
440
|
-
rm.attr("title", TableUtils.getResourceText(sTitle));
|
|
439
|
+
rm.attr("title", TableUtils.getResourceText("TBL_SELECT_ALL"));
|
|
441
440
|
} else if (mRenderConfig.headerSelector.type === "custom") {
|
|
442
441
|
const sTitle = mRenderConfig.headerSelector.tooltip;
|
|
443
442
|
rm.attr("title", sTitle);
|
|
@@ -530,7 +530,7 @@ sap.ui.define([
|
|
|
530
530
|
const aLabels = [oTable.getId() + "-colnumberofcols"].concat(mAttributes["aria-labelledby"]);
|
|
531
531
|
const iSpan = oCellInfo.columnSpan;
|
|
532
532
|
|
|
533
|
-
if (
|
|
533
|
+
if (oColumnLabel?.getRequired?.()) {
|
|
534
534
|
aLabels.push(oTable.getId() + "-ariarequired");
|
|
535
535
|
}
|
|
536
536
|
|
|
@@ -969,7 +969,7 @@ sap.ui.define([
|
|
|
969
969
|
* @class Extension for sap.ui.table.Table which handles ACC related things.
|
|
970
970
|
* @extends sap.ui.table.extensions.ExtensionBase
|
|
971
971
|
* @author SAP SE
|
|
972
|
-
* @version 1.
|
|
972
|
+
* @version 1.126.0
|
|
973
973
|
* @constructor
|
|
974
974
|
* @private
|
|
975
975
|
* @alias sap.ui.table.extensions.Accessibility
|
|
@@ -44,7 +44,7 @@ sap.ui.define([
|
|
|
44
44
|
* @class Extension for sap.ui.table.TableRenderer which handles ACC related things.
|
|
45
45
|
* @extends sap.ui.table.extensions.ExtensionBase
|
|
46
46
|
* @author SAP SE
|
|
47
|
-
* @version 1.
|
|
47
|
+
* @version 1.126.0
|
|
48
48
|
* @constructor
|
|
49
49
|
* @private
|
|
50
50
|
* @alias sap.ui.table.extensions.AccessibilityRender
|
|
@@ -130,6 +130,7 @@ sap.ui.define([
|
|
|
130
130
|
* Initialize ItemNavigations (content and header) and transfer relevant dom elements.
|
|
131
131
|
* TabIndexes are set by the ItemNavigation.
|
|
132
132
|
*/
|
|
133
|
+
// eslint-disable-next-line complexity
|
|
133
134
|
_initItemNavigation: function(oExtension, bSkipInitFocusedIndex) {
|
|
134
135
|
const oTable = oExtension.getTable();
|
|
135
136
|
|
|
@@ -267,7 +268,7 @@ sap.ui.define([
|
|
|
267
268
|
* @class Extension for sap.ui.table.Table which handles keyboard related things.
|
|
268
269
|
* @extends sap.ui.table.extensions.ExtensionBase
|
|
269
270
|
* @author SAP SE
|
|
270
|
-
* @version 1.
|
|
271
|
+
* @version 1.126.0
|
|
271
272
|
* @constructor
|
|
272
273
|
* @private
|
|
273
274
|
* @alias sap.ui.table.extensions.Keyboard
|
|
@@ -65,7 +65,7 @@ sap.ui.define([
|
|
|
65
65
|
*
|
|
66
66
|
* @extends sap.ui.base.Object
|
|
67
67
|
* @author SAP SE
|
|
68
|
-
* @version 1.
|
|
68
|
+
* @version 1.126.0
|
|
69
69
|
* @constructor
|
|
70
70
|
* @private
|
|
71
71
|
* @alias sap.ui.table.extensions.KeyboardDelegate
|
|
@@ -1117,13 +1117,14 @@ sap.ui.define([
|
|
|
1117
1117
|
} else if (KeyboardDelegate._isKeyCombination(oEvent, KeyCodes.A, ModKey.CTRL)) {
|
|
1118
1118
|
oEvent.preventDefault(); // Prevent full page text selection.
|
|
1119
1119
|
|
|
1120
|
-
if (oCellInfo.isOfType(CellType.ANYCONTENTCELL | CellType.COLUMNROWHEADER)
|
|
1120
|
+
if (oCellInfo.isOfType(CellType.ANYCONTENTCELL | CellType.COLUMNROWHEADER)) {
|
|
1121
1121
|
oSelectionPlugin.onKeyboardShortcut("toggle", oEvent);
|
|
1122
1122
|
}
|
|
1123
1123
|
|
|
1124
1124
|
// Ctrl+Shift+A: Deselect all.
|
|
1125
1125
|
} else if (KeyboardDelegate._isKeyCombination(oEvent, KeyCodes.A, ModKey.CTRL + ModKey.SHIFT)) {
|
|
1126
1126
|
if (oCellInfo.isOfType(CellType.ANYCONTENTCELL | CellType.COLUMNROWHEADER)) {
|
|
1127
|
+
oEvent.preventDefault();
|
|
1127
1128
|
oSelectionPlugin.onKeyboardShortcut("clear", oEvent);
|
|
1128
1129
|
}
|
|
1129
1130
|
|
|
@@ -1408,7 +1409,7 @@ sap.ui.define([
|
|
|
1408
1409
|
};
|
|
1409
1410
|
|
|
1410
1411
|
KeyboardDelegate.prototype.onsapdownmodifiers = function(oEvent) {
|
|
1411
|
-
if (oEvent.isMarked()) {
|
|
1412
|
+
if (oEvent.isMarked() || KeyboardDelegate._isKeyCombination(oEvent, null, ModKey.CTRL + ModKey.ALT)) {
|
|
1412
1413
|
preventItemNavigation(oEvent);
|
|
1413
1414
|
return;
|
|
1414
1415
|
}
|
|
@@ -1497,7 +1498,7 @@ sap.ui.define([
|
|
|
1497
1498
|
};
|
|
1498
1499
|
|
|
1499
1500
|
KeyboardDelegate.prototype.onsapupmodifiers = function(oEvent) {
|
|
1500
|
-
if (oEvent.isMarked()) {
|
|
1501
|
+
if (oEvent.isMarked() || KeyboardDelegate._isKeyCombination(oEvent, null, ModKey.CTRL + ModKey.ALT)) {
|
|
1501
1502
|
preventItemNavigation(oEvent);
|
|
1502
1503
|
return;
|
|
1503
1504
|
}
|
|
@@ -1651,8 +1652,8 @@ sap.ui.define([
|
|
|
1651
1652
|
iColumnSpanWidth += TableUtils.Column.getColumnWidth(this, i);
|
|
1652
1653
|
}
|
|
1653
1654
|
|
|
1654
|
-
|
|
1655
|
-
|
|
1655
|
+
const oColumn = this.getColumns()[oCellInfo.columnIndex];
|
|
1656
|
+
TableUtils.Column.resizeColumn(this, oColumn, iColumnSpanWidth + iResizeDelta, true, oCellInfo.columnSpan);
|
|
1656
1657
|
preventItemNavigation(oEvent);
|
|
1657
1658
|
}
|
|
1658
1659
|
|
|
@@ -1722,7 +1723,8 @@ sap.ui.define([
|
|
|
1722
1723
|
iColumnSpanWidth += TableUtils.Column.getColumnWidth(this, i);
|
|
1723
1724
|
}
|
|
1724
1725
|
|
|
1725
|
-
|
|
1726
|
+
const oColumn = this.getColumns()[oCellInfo.columnIndex];
|
|
1727
|
+
TableUtils.Column.resizeColumn(this, oColumn, iColumnSpanWidth + iResizeDelta, true, oCellInfo.columnSpan);
|
|
1726
1728
|
|
|
1727
1729
|
preventItemNavigation(oEvent);
|
|
1728
1730
|
|
|
@@ -155,7 +155,8 @@ sap.ui.define([
|
|
|
155
155
|
const iCalculatedColumnWidth = Math.round(iColumnWidth + iDeltaX * (this._bRtlMode ? -1 : 1)) - iPaddingAndBorder;
|
|
156
156
|
const iNewColumnWidth = Math.max(iCalculatedColumnWidth, TableUtils.Column.getMinColumnWidth());
|
|
157
157
|
|
|
158
|
-
ColumnResizeHelper.
|
|
158
|
+
ColumnResizeHelper._cleanupColumResizing(this);
|
|
159
|
+
TableUtils.Column.resizeColumn(this, oColumn, this._bColumnResizerMoved ? iNewColumnWidth : null);
|
|
159
160
|
},
|
|
160
161
|
|
|
161
162
|
/*
|
|
@@ -179,8 +180,10 @@ sap.ui.define([
|
|
|
179
180
|
}
|
|
180
181
|
},
|
|
181
182
|
|
|
182
|
-
|
|
183
|
-
* Cleans up the state which is created while
|
|
183
|
+
/**
|
|
184
|
+
* Cleans up the state which is created while resizing a column via drag&drop.
|
|
185
|
+
*
|
|
186
|
+
* @param {sap.ui.table.Table} oTable Instance of the table
|
|
184
187
|
*/
|
|
185
188
|
_cleanupColumResizing: function(oTable) {
|
|
186
189
|
if (oTable._$colResize) {
|
|
@@ -198,77 +201,6 @@ sap.ui.define([
|
|
|
198
201
|
$Document.off("mouseup.sapUiTableColumnResize");
|
|
199
202
|
},
|
|
200
203
|
|
|
201
|
-
/*
|
|
202
|
-
* Cleans up the state which is created while resize a column via drag&drop and recalculates the new column width.
|
|
203
|
-
*/
|
|
204
|
-
_resizeColumn: function(oTable, iColIndex, iNewWidth) {
|
|
205
|
-
const aVisibleColumns = oTable._getVisibleColumns();
|
|
206
|
-
let oColumn;
|
|
207
|
-
|
|
208
|
-
if (iColIndex >= 0 && iColIndex < aVisibleColumns.length) {
|
|
209
|
-
oColumn = aVisibleColumns[iColIndex];
|
|
210
|
-
if (iNewWidth != null) {
|
|
211
|
-
TableUtils.Column.resizeColumn(oTable, oTable.indexOfColumn(oColumn), iNewWidth);
|
|
212
|
-
}
|
|
213
|
-
}
|
|
214
|
-
|
|
215
|
-
ColumnResizeHelper._cleanupColumResizing(oTable);
|
|
216
|
-
oColumn.focus();
|
|
217
|
-
},
|
|
218
|
-
|
|
219
|
-
/*
|
|
220
|
-
* Computes the optimal width for a column and changes the width if the auto resize feature is activated for the column.
|
|
221
|
-
*
|
|
222
|
-
* Experimental feature.
|
|
223
|
-
*/
|
|
224
|
-
doAutoResizeColumn: function(oTable, iColIndex) {
|
|
225
|
-
const aVisibleColumns = oTable._getVisibleColumns();
|
|
226
|
-
let oColumn;
|
|
227
|
-
|
|
228
|
-
if (iColIndex >= 0 && iColIndex < aVisibleColumns.length) {
|
|
229
|
-
oColumn = aVisibleColumns[iColIndex];
|
|
230
|
-
if (!oColumn.getAutoResizable() || !oColumn.getResizable()) {
|
|
231
|
-
return;
|
|
232
|
-
}
|
|
233
|
-
|
|
234
|
-
const iNewWidth = ColumnResizeHelper._calculateAutomaticColumnWidth.apply(oTable, [oColumn, iColIndex]);
|
|
235
|
-
if (iNewWidth) {
|
|
236
|
-
ColumnResizeHelper._resizeColumn(oTable, iColIndex, iNewWidth);
|
|
237
|
-
}
|
|
238
|
-
}
|
|
239
|
-
},
|
|
240
|
-
|
|
241
|
-
/*
|
|
242
|
-
* Calculates the widest content width of the currently visible column cells including headers.
|
|
243
|
-
* Headers with column span are not taken into account.
|
|
244
|
-
* @param {sap.ui.table.Column} oCol the column
|
|
245
|
-
* @param {int} iColIndex index of the column
|
|
246
|
-
* @returns {int} iWidth calculated column width
|
|
247
|
-
* @private
|
|
248
|
-
*/
|
|
249
|
-
_calculateAutomaticColumnWidth: function(oCol, iColIndex) {
|
|
250
|
-
oCol = oCol || this.getColumns()[iColIndex];
|
|
251
|
-
const $this = this.$();
|
|
252
|
-
const $hiddenArea = jQuery("<div>").addClass("sapUiTableHiddenSizeDetector sapUiTableHeaderDataCell sapUiTableDataCell");
|
|
253
|
-
$this.append($hiddenArea);
|
|
254
|
-
|
|
255
|
-
// Create a copy of all visible cells in the column, including the header cells without colspan
|
|
256
|
-
const $cells = $this.find("td[data-sap-ui-colid = \"" + oCol.getId() + "\"]:not([colspan])")
|
|
257
|
-
.filter(function(index, element) {
|
|
258
|
-
return element.style.display !== "none";
|
|
259
|
-
}).children().clone();
|
|
260
|
-
$cells.removeAttr("id"); // remove all id attributes
|
|
261
|
-
|
|
262
|
-
// Determine the column width
|
|
263
|
-
let iWidth = $hiddenArea.append($cells).width() + 4; // widest cell + 4px for borders, padding and rounding
|
|
264
|
-
iWidth = Math.min(iWidth, $this.find(".sapUiTableCnt").width()); // no wider as the table
|
|
265
|
-
iWidth = Math.max(iWidth + 4, TableUtils.Column.getMinColumnWidth()); // not to small
|
|
266
|
-
|
|
267
|
-
$hiddenArea.remove();
|
|
268
|
-
|
|
269
|
-
return iWidth;
|
|
270
|
-
},
|
|
271
|
-
|
|
272
204
|
/*
|
|
273
205
|
* Initialize the event listener for positioning the column resize bar and computing the currently hovered column.
|
|
274
206
|
*/
|
|
@@ -678,7 +610,13 @@ sap.ui.define([
|
|
|
678
610
|
ondblclick: function(oEvent) {
|
|
679
611
|
if (Device.system.desktop && oEvent.target === this.getDomRef("rsz")) {
|
|
680
612
|
oEvent.preventDefault();
|
|
681
|
-
ColumnResizeHelper.
|
|
613
|
+
ColumnResizeHelper._cleanupColumResizing(this);
|
|
614
|
+
|
|
615
|
+
const oColumn = this._getVisibleColumns()[this._iLastHoveredVisibleColumnIndex];
|
|
616
|
+
|
|
617
|
+
if (oColumn.getAutoResizable()) {
|
|
618
|
+
oColumn.autoResize();
|
|
619
|
+
}
|
|
682
620
|
}
|
|
683
621
|
},
|
|
684
622
|
|
|
@@ -765,7 +703,7 @@ sap.ui.define([
|
|
|
765
703
|
* @class Extension for sap.ui.table.Table which handles mouse and touch related things.
|
|
766
704
|
* @extends sap.ui.table.extensions.ExtensionBase
|
|
767
705
|
* @author SAP SE
|
|
768
|
-
* @version 1.
|
|
706
|
+
* @version 1.126.0
|
|
769
707
|
* @constructor
|
|
770
708
|
* @private
|
|
771
709
|
* @alias sap.ui.table.extensions.Pointer
|
|
@@ -835,18 +773,6 @@ sap.ui.define([
|
|
|
835
773
|
this._KNOWNCLICKABLECONTROLS = KNOWNCLICKABLECONTROLS;
|
|
836
774
|
},
|
|
837
775
|
|
|
838
|
-
/**
|
|
839
|
-
* Resizes the given column to its optimal width if the auto resize feature is available for this column.
|
|
840
|
-
*
|
|
841
|
-
* @param {int} iColIndex The index of the column to resize.
|
|
842
|
-
*/
|
|
843
|
-
doAutoResizeColumn: function(iColIndex) {
|
|
844
|
-
const oTable = this.getTable();
|
|
845
|
-
if (oTable) {
|
|
846
|
-
ColumnResizeHelper.doAutoResizeColumn(oTable, iColIndex);
|
|
847
|
-
}
|
|
848
|
-
},
|
|
849
|
-
|
|
850
776
|
/**
|
|
851
777
|
* Initialize the basic event handling for column reordering and starts the reordering.
|
|
852
778
|
*
|