@openui5/sap.ui.dt 1.96.5 → 1.99.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.
Files changed (47) hide show
  1. package/.reuse/dep5 +26 -31
  2. package/THIRDPARTY.txt +15 -21
  3. package/package.json +2 -2
  4. package/src/sap/ui/dt/.library +1 -1
  5. package/src/sap/ui/dt/AggregationDesignTimeMetadata.js +1 -1
  6. package/src/sap/ui/dt/AggregationOverlay.js +2 -1
  7. package/src/sap/ui/dt/ControlObserver.js +1 -1
  8. package/src/sap/ui/dt/DOMUtil.js +7 -6
  9. package/src/sap/ui/dt/DesignTime.js +80 -29
  10. package/src/sap/ui/dt/DesignTimeMetadata.js +6 -7
  11. package/src/sap/ui/dt/ElementDesignTimeMetadata.js +7 -5
  12. package/src/sap/ui/dt/ElementOverlay.js +6 -2
  13. package/src/sap/ui/dt/ElementUtil.js +5 -42
  14. package/src/sap/ui/dt/ManagedObjectObserver.js +2 -1
  15. package/src/sap/ui/dt/MetadataPropagationUtil.js +6 -6
  16. package/src/sap/ui/dt/MutationObserver.js +1 -1
  17. package/src/sap/ui/dt/Overlay.js +16 -17
  18. package/src/sap/ui/dt/OverlayRegistry.js +2 -3
  19. package/src/sap/ui/dt/OverlayUtil.js +5 -5
  20. package/src/sap/ui/dt/Plugin.js +30 -1
  21. package/src/sap/ui/dt/ScrollbarSynchronizer.js +2 -2
  22. package/src/sap/ui/dt/SelectionManager.js +1 -1
  23. package/src/sap/ui/dt/SelectionMode.js +1 -1
  24. package/src/sap/ui/dt/TaskManager.js +57 -42
  25. package/src/sap/ui/dt/TaskRunner.js +15 -15
  26. package/src/sap/ui/dt/Util.js +2 -2
  27. package/src/sap/ui/dt/enablement/ElementEnablementTest.js +2 -3
  28. package/src/sap/ui/dt/enablement/Test.js +25 -24
  29. package/src/sap/ui/dt/enablement/Util.js +9 -9
  30. package/src/sap/ui/dt/enablement/libraryTest.js +2 -2
  31. package/src/sap/ui/dt/enablement/report/LibraryReport.js +1 -1
  32. package/src/sap/ui/dt/enablement/report/QUnitReport.js +2 -3
  33. package/src/sap/ui/dt/enablement/report/Statistic.js +1 -1
  34. package/src/sap/ui/dt/enablement/report/StatisticRenderer.js +2 -2
  35. package/src/sap/ui/dt/enablement/report/Table.js +2 -3
  36. package/src/sap/ui/dt/enablement/report/TableRenderer.js +2 -2
  37. package/src/sap/ui/dt/library.js +2 -2
  38. package/src/sap/ui/dt/plugin/ContextMenu.js +7 -5
  39. package/src/sap/ui/dt/plugin/ControlDragDrop.js +1 -1
  40. package/src/sap/ui/dt/plugin/CutPaste.js +1 -1
  41. package/src/sap/ui/dt/plugin/DragDrop.js +19 -18
  42. package/src/sap/ui/dt/plugin/ElementMover.js +3 -2
  43. package/src/sap/ui/dt/plugin/MouseSelection.js +1 -1
  44. package/src/sap/ui/dt/plugin/TabHandling.js +1 -1
  45. package/src/sap/ui/dt/plugin/ToolHooks.js +1 -1
  46. package/src/sap/ui/dt/util/ZIndexManager.js +1 -1
  47. package/src/sap/ui/dt/util/_createPromise.js +6 -4
@@ -21,7 +21,7 @@ function(
21
21
  * The TaskManager keeps list of task and allows to manage them via simple API.
22
22
  *
23
23
  * @author SAP SE
24
- * @version 1.96.5
24
+ * @version 1.99.0
25
25
  *
26
26
  * @constructor
27
27
  * @private
@@ -65,7 +65,7 @@ function(
65
65
  _iTaskCounter: 0
66
66
  });
67
67
 
68
- TaskManager.prototype._validateTask = function(mTask) {
68
+ function validateTask(mTask) {
69
69
  if (
70
70
  !isPlainObject(mTask)
71
71
  || !mTask.type
@@ -73,35 +73,50 @@ function(
73
73
  ) {
74
74
  throw new Error("Invalid task specified");
75
75
  }
76
- };
76
+ }
77
77
 
78
- TaskManager.prototype._removeOutdatedTasks = function(mTask, vDoubleIdentifier) {
79
- if (vDoubleIdentifier) {
80
- var fnDoubleIdentifier;
81
- if (typeof vDoubleIdentifier === "string") {
82
- fnDoubleIdentifier = function (mTask) { return mTask[vDoubleIdentifier]; };
83
- } else if (typeof vDoubleIdentifier === "function") {
84
- fnDoubleIdentifier = vDoubleIdentifier;
85
- } else {
86
- throw new Error("Validator needs to be a function or a string");
87
- }
88
- var aTaskList = this._mQueuedTasks[mTask.type];
89
- var sNewTaskIdentifier = fnDoubleIdentifier(mTask);
90
- if (
91
- aTaskList
92
- && sNewTaskIdentifier
93
- ) {
94
- this._mQueuedTasks[mTask.type] = aTaskList.filter(function (oTask) {
95
- if (fnDoubleIdentifier(oTask) === sNewTaskIdentifier) {
96
- this._iTaskCounter--;
97
- return false;
98
- }
99
- return true;
100
- }.bind(this));
78
+ function getTaskIdentifierFunction(vTaskIdentifier) {
79
+ var fnTaskIdentifier;
80
+ if (typeof vTaskIdentifier === "string") {
81
+ fnTaskIdentifier = function (mTask) { return mTask[vTaskIdentifier]; };
82
+ } else if (typeof vTaskIdentifier === "function") {
83
+ fnTaskIdentifier = vTaskIdentifier;
84
+ } else {
85
+ throw new Error("Validator needs to be a function or a string");
86
+ }
87
+ return fnTaskIdentifier;
88
+ }
89
+
90
+ function filterTasks(fnTaskIdentifier, sNewTaskIdentifier, oTask) {
91
+ if (fnTaskIdentifier(oTask) === sNewTaskIdentifier) {
92
+ this._iTaskCounter--;
93
+ return false;
94
+ }
95
+ return true;
96
+ }
97
+
98
+ TaskManager.prototype._removeTasksByIdentifier = function(mTask, vTaskIdentifier, sListName) {
99
+ if (vTaskIdentifier) {
100
+ var fnTaskIdentifier = getTaskIdentifierFunction(vTaskIdentifier);
101
+ var sNewTaskIdentifier = fnTaskIdentifier(mTask);
102
+ if (this[sListName][mTask.type] && sNewTaskIdentifier) {
103
+ this[sListName][mTask.type] = this[sListName][mTask.type].filter(filterTasks.bind(this, fnTaskIdentifier, sNewTaskIdentifier));
101
104
  }
102
105
  }
103
106
  };
104
107
 
108
+ TaskManager.prototype._removeTaskById = function (iTaskId, sListName) {
109
+ Object.keys(this[sListName]).forEach(function (sTypeName) {
110
+ this[sListName][sTypeName] = this[sListName][sTypeName].filter(function (mTask) {
111
+ if (mTask.id === iTaskId) {
112
+ this._iTaskCounter--;
113
+ return false;
114
+ }
115
+ return true;
116
+ }.bind(this));
117
+ }, this);
118
+ };
119
+
105
120
  TaskManager.prototype._addTask = function(mTask) {
106
121
  var iTaskId = this._iNextId++;
107
122
  this._mQueuedTasks[mTask.type] = this._mQueuedTasks[mTask.type] || [];
@@ -127,29 +142,16 @@ function(
127
142
  * @return {number} Task ID
128
143
  */
129
144
  TaskManager.prototype.add = function (mTask, vDoubleIdentifier) {
130
- this._validateTask(mTask);
131
- this._removeOutdatedTasks(mTask, vDoubleIdentifier);
145
+ validateTask(mTask);
146
+ this._removeTasksByIdentifier(mTask, vDoubleIdentifier, "_mQueuedTasks");
132
147
  return this._addTask(mTask);
133
148
  };
134
149
 
135
- TaskManager.prototype._removeTaskById = function (iTaskId, sListName) {
136
- Object.keys(this[sListName]).forEach(function (sTypeName) {
137
- this[sListName][sTypeName] = this[sListName][sTypeName].filter(function (mTask) {
138
- if (mTask.id === iTaskId) {
139
- this._iTaskCounter--;
140
- return false;
141
- }
142
- return true;
143
- }.bind(this));
144
- }, this);
145
- };
146
-
147
150
  /**
148
151
  * Completes the task by its ID
149
152
  * @param {number} iTaskId - Task ID
150
153
  */
151
154
  TaskManager.prototype.complete = function (iTaskId) {
152
- // TODO: performance improvements?
153
155
  this._removeTaskById(iTaskId, "_mQueuedTasks");
154
156
  this._removeTaskById(iTaskId, "_mPendingTasks");
155
157
  if (!this.getSuppressEvents()) {
@@ -166,7 +168,7 @@ function(
166
168
  * @param {object} mTask.type - Task type
167
169
  */
168
170
  TaskManager.prototype.completeBy = function (mTask) {
169
- this._validateTask(mTask);
171
+ validateTask(mTask);
170
172
  var aCompledTaskIds = [];
171
173
  // TODO: get rid of filtering other task parameters then type for performance reasons
172
174
  var _removeTasksByDefinition = function (aTasks) {
@@ -199,6 +201,19 @@ function(
199
201
  this.complete(iTaskId);
200
202
  };
201
203
 
204
+ /**
205
+ * Cancels the task typespecific by its parameters defined by the callbackfunction
206
+ *
207
+ * @param {object} mTask - Task definition map
208
+ * @param {string} mTask.type - Task type
209
+ * @param {string} sTaskIdentifier - Identifier for tasks in <code>TaskManager</code> related to the specific task type.
210
+ * The existing tasks that are identified by <code>sTaskIdentifier</code> are removed
211
+ */
212
+ TaskManager.prototype.cancelBy = function (mTask, sTaskIdentifier) {
213
+ this._removeTasksByIdentifier(mTask, sTaskIdentifier, "_mQueuedTasks");
214
+ this._removeTasksByIdentifier(mTask, sTaskIdentifier, "_mPendingTasks");
215
+ };
216
+
202
217
  /**
203
218
  * Checks if the queue is empty
204
219
  * @return {boolean} <code>true</code> if there is no pending task
@@ -24,7 +24,7 @@ function(
24
24
  * TaskRunner run tasks defined in sap.ui.dt.TaskManager.
25
25
  *
26
26
  * @author SAP SE
27
- * @version 1.96.5
27
+ * @version 1.99.0
28
28
  *
29
29
  * @constructor
30
30
  * @private
@@ -59,9 +59,10 @@ function(
59
59
  TaskRunner.prototype._observe = function (oEvent) {
60
60
  this._oTaskPromise = this._oTaskPromise.then(function() {
61
61
  if (this._shouldObserveBreak()) {
62
- return this.stop();
62
+ this.stop();
63
+ } else {
64
+ this._runTasksFromManager(oEvent);
63
65
  }
64
- this._runTasksFromManager(oEvent);
65
66
  }.bind(this));
66
67
  };
67
68
 
@@ -73,19 +74,18 @@ function(
73
74
  };
74
75
 
75
76
  TaskRunner.prototype._runTasks = function (aTasks) {
76
- var aTaskPromises = [];
77
- for (var i = 0, n = aTasks.length; i < n; i++) {
78
- if (aTasks[i].callbackFn) {
79
- try {
80
- aTaskPromises.push(
81
- aTasks[i].callbackFn()
82
- .then(this._oTaskManager.complete.bind(this._oTaskManager, aTasks[i].id))
83
- );
84
- } catch (vError) {
85
- BaseLog.error(DtUtil.errorToString(vError));
86
- }
77
+ aTasks.forEach(function (oTask) {
78
+ if (oTask.callbackFn) {
79
+ oTask.callbackFn()
80
+ .then(function () {
81
+ this._oTaskManager.complete(oTask.id);
82
+ }.bind(this))
83
+ .catch(function (vError) {
84
+ this._oTaskManager.complete(oTask.id);
85
+ BaseLog.error(DtUtil.errorToString(vError) + " / related task: " + JSON.stringify(oTask));
86
+ }.bind(this));
87
87
  }
88
- }
88
+ }.bind(this));
89
89
  };
90
90
 
91
91
  TaskRunner.prototype.run = function (sTaskType) {
@@ -24,7 +24,7 @@ sap.ui.define([
24
24
  * Utilities for sap.ui.dt library
25
25
  *
26
26
  * @author SAP SE
27
- * @version 1.96.5
27
+ * @version 1.99.0
28
28
  *
29
29
  * @private
30
30
  * @static
@@ -239,7 +239,7 @@ sap.ui.define([
239
239
 
240
240
  /**
241
241
  * Webkit can be safari or chrome mobile
242
- * @return {Boolean} Returns true if the device browser uses webkit
242
+ * @return {boolean} Returns true if the device browser uses webkit
243
243
  */
244
244
  Util.isWebkit = function() {
245
245
  return Device.browser.webkit && (Device.browser.safari || Device.browser.chrome && Device.browser.mobile);
@@ -13,8 +13,7 @@ sap.ui.define([
13
13
  "sap/ui/dt/ElementOverlay",
14
14
  "sap/ui/qunit/utils/waitForThemeApplied",
15
15
  "sap/ui/thirdparty/sinon-4"
16
- ],
17
- function(
16
+ ], function(
18
17
  jQuery,
19
18
  Test,
20
19
  DesignTime,
@@ -38,7 +37,7 @@ function(
38
37
  * @extends sap.ui.dt.test.Test
39
38
  *
40
39
  * @author SAP SE
41
- * @version 1.96.5
40
+ * @version 1.99.0
42
41
  *
43
42
  * @constructor
44
43
  * @private
@@ -7,8 +7,7 @@
7
7
  // Provides class sap.ui.dt.test.Test.
8
8
  sap.ui.define([
9
9
  "sap/ui/base/ManagedObject"
10
- ],
11
- function(ManagedObject) {
10
+ ], function(ManagedObject) {
12
11
  "use strict";
13
12
 
14
13
  /**
@@ -23,7 +22,7 @@ function(ManagedObject) {
23
22
  * @extends sap.ui.base.ManagedObject
24
23
  *
25
24
  * @author SAP SE
26
- * @version 1.96.5
25
+ * @version 1.99.0
27
26
  *
28
27
  * @constructor
29
28
  * @private
@@ -83,9 +82,9 @@ function(ManagedObject) {
83
82
  /**
84
83
  * Creates a new suite and returns it.
85
84
  *
86
- * @param {string} sName The name of the suite.
87
- * @param {string} sMessage A message to display
88
- * @return {map} the entry object
85
+ * @param {string} sName - Name of the suite
86
+ * @param {string} sMessage - Message to display
87
+ * @return {map} Entry object
89
88
  *
90
89
  * @protected
91
90
  */
@@ -104,10 +103,11 @@ function(ManagedObject) {
104
103
  /**
105
104
  * Adds a new group to an array.
106
105
  *
107
- * @param {object[]} aParentChildren the array to insert the group
108
- * @param {string} sName The name of the group.
109
- * @param {string} sMessage A message to display
110
- * @return {map} the entry object
106
+ * @param {object[]} aParentChildren - Array to insert the group
107
+ * @param {string} sName - Name of the group
108
+ * @param {string} sMessage - Message to display
109
+ * @param {string} sNamePostfix - Namepostfix
110
+ * @returns {map} Entry object
111
111
  *
112
112
  * @protected
113
113
  */
@@ -125,12 +125,12 @@ function(ManagedObject) {
125
125
  /**
126
126
  * Adds a new test to an array.
127
127
  *
128
- * @param {object[]} aParentChildren the array to insert the test
129
- * @param {boolean} bResult The result of the test.
130
- * @param {string} sName The name of the test.
131
- * @param {string} sMessage A message to display
132
- * @param {map} status The status of the test.
133
- * @return {map} the entry object
128
+ * @param {object[]} aParentChildren - Array to insert the test
129
+ * @param {boolean} bResult - Result of the test
130
+ * @param {string} sName - Name of the test
131
+ * @param {string} sMessage - Message to display
132
+ * @param {map} mStatus - Status of the test
133
+ * @return {map} Entry object
134
134
  *
135
135
  * @protected
136
136
  */
@@ -148,13 +148,13 @@ function(ManagedObject) {
148
148
  /**
149
149
  * Adds a new entry to an array.
150
150
  *
151
- * @param {object[]} aParentChildren the array to insert the entry
152
- * @param {boolean} bResult The result of the entry.
153
- * @param {string} sName The name of the entry.
154
- * @param {string} sMessage A message to display
155
- * @param {map} mStatus The status of the entry.
156
- * @param {string} sType The type of the entry.
157
- * @return {map} the entry object
151
+ * @param {object[]} aParentChildren - Array to insert the entry
152
+ * @param {boolean} bResult - Result of the entry
153
+ * @param {string} sName - Name of the entry
154
+ * @param {string} sMessage - Message to display
155
+ * @param {map} mStatus - Status of the entry
156
+ * @param {string} sType - Type of the entry
157
+ * @return {map} Entry object
158
158
  *
159
159
  * @protected
160
160
  */
@@ -197,7 +197,8 @@ function(ManagedObject) {
197
197
 
198
198
  /**
199
199
  * Aggregates the tests results.
200
- * @return {map} the aggregated result
200
+ * @param {map} mResult - Result to aggregate
201
+ * @return {map} Aggregated result
201
202
  *
202
203
  * @protected
203
204
  */
@@ -9,8 +9,7 @@ sap.ui.define([
9
9
  "sap/ui/dt/ElementUtil",
10
10
  "sap/ui/dt/DOMUtil",
11
11
  "sap/ui/dt/OverlayRegistry"
12
- ],
13
- function(
12
+ ], function(
14
13
  ElementUtil,
15
14
  DOMUtil,
16
15
  OverlayRegistry
@@ -23,7 +22,7 @@ function(
23
22
  * @namespace
24
23
  *
25
24
  * @author SAP SE
26
- * @version 1.96.5
25
+ * @version 1.99.0
27
26
  *
28
27
  * @private
29
28
  * @static
@@ -37,8 +36,8 @@ function(
37
36
 
38
37
  /**
39
38
  * Returns all design time information of the element
40
- * @param {sap.ui.core.Element} oElement the element to test
41
- * @return {map} result object
39
+ * @param {sap.ui.core.Element} oElement - Element to test
40
+ * @returns {map} Result object
42
41
  */
43
42
  ElementTest.getInfo = function(oElement) {
44
43
  var oMetadata = oElement.getMetadata();
@@ -53,8 +52,9 @@ function(
53
52
 
54
53
  /**
55
54
  * Returns all aggregation infos of the element
56
- * @param {sap.ui.core.Element} oElement the element to test
57
- * @return {map} result object
55
+ * @param {sap.ui.core.Element} oElement - Element to test
56
+ * @param {string} sAggregationName - Name of the aggregation
57
+ * @returns {map} Result object
58
58
  */
59
59
  ElementTest.getAggregationInfo = function(oElement, sAggregationName) {
60
60
  var mAggregationTest = {
@@ -98,8 +98,8 @@ function(
98
98
 
99
99
  /**
100
100
  * Returns all information of all aggregations of the element
101
- * @param {sap.ui.core.Element} oElement the element to test
102
- * @return {map} result object
101
+ * @param {sap.ui.core.Element} oElement - Element to test
102
+ * @returns {map} Result object
103
103
  */
104
104
  ElementTest.getAggregationsInfo = function(oElement) {
105
105
  var mAggregationTests = {};
@@ -4,7 +4,7 @@
4
4
  * Licensed under the Apache License, Version 2.0 - see LICENSE.txt.
5
5
  */
6
6
 
7
- /* global QUnit, XMLHttpRequest */
7
+ /* global QUnit */
8
8
 
9
9
  sap.ui.define([
10
10
  "sap/ui/model/resource/ResourceModel",
@@ -246,7 +246,7 @@ sap.ui.define([
246
246
  oController: this
247
247
  });
248
248
  //check the controls type
249
- assert.strictEqual((oControl instanceof jQuery.sap.getObject(sControlName)) || , true, sCreateTemplate + " created a control with the right type " + sControlName + "/" + oControl.getMetadata().getName());
249
+ assert.strictEqual((oControl instanceof ObjectPath.get(sControlName)) || , true, sCreateTemplate + " created a control with the right type " + sControlName + "/" + oControl.getMetadata().getName());
250
250
  */
251
251
  }
252
252
  }
@@ -25,7 +25,7 @@ sap.ui.define([
25
25
  * @extends sap.ui.dt.enablement.Test
26
26
  *
27
27
  * @author SAP SE
28
- * @version 1.96.5
28
+ * @version 1.99.0
29
29
  *
30
30
  * @constructor
31
31
  * @private
@@ -8,8 +8,7 @@
8
8
 
9
9
  sap.ui.define([
10
10
  "sap/ui/base/ManagedObject"
11
- ],
12
- function(
11
+ ], function(
13
12
  ManagedObject
14
13
  ) {
15
14
  "use strict";
@@ -25,7 +24,7 @@ function(
25
24
  * @extends sap.ui.base.ManagedObject
26
25
  *
27
26
  * @author SAP SE
28
- * @version 1.96.5
27
+ * @version 1.99.0
29
28
  *
30
29
  * @constructor
31
30
  * @private
@@ -32,7 +32,7 @@ sap.ui.define([
32
32
  * @extends sap.ui.core.Control
33
33
  *
34
34
  * @author SAP SE
35
- * @version 1.96.5
35
+ * @version 1.99.0
36
36
  *
37
37
  * @constructor
38
38
  * @private
@@ -10,7 +10,7 @@ sap.ui.define(function() {
10
10
 
11
11
  /**
12
12
  * @author SAP SE
13
- * @version 1.96.5
13
+ * @version 1.99.0
14
14
  * @namespace
15
15
  */
16
16
  var StatisticRenderer = {};
@@ -19,7 +19,7 @@ sap.ui.define(function() {
19
19
  * Renders the HTML for the given control, using the provided {@link sap.ui.core.RenderManager}.
20
20
  *
21
21
  * @param {sap.ui.core.RenderManager} rm The RenderManager that can be used for writing to the render output buffer.
22
- * @param {sap.ui.core.Control} oStatistic An object representation of the control that should be rendered.
22
+ * @param {sap.ui.dt.enablement.report.Statistic} oStatistic An object representation of the control that should be rendered.
23
23
  */
24
24
  StatisticRenderer.render = function(rm, oStatistic) {
25
25
  rm.addClass("sapUiDtStatisticReport");
@@ -17,8 +17,7 @@ sap.ui.define([
17
17
  "sap/m/Text",
18
18
  "sap/m/RatingIndicator",
19
19
  "./TableRenderer"
20
- ],
21
- function(
20
+ ], function(
22
21
  Control,
23
22
  JSONModel,
24
23
  TreeTable,
@@ -43,7 +42,7 @@ function(
43
42
  * @extends sap.ui.core.Control
44
43
  *
45
44
  * @author SAP SE
46
- * @version 1.96.5
45
+ * @version 1.99.0
47
46
  *
48
47
  * @constructor
49
48
  * @private
@@ -10,7 +10,7 @@ sap.ui.define(function() {
10
10
 
11
11
  /**
12
12
  * @author SAP SE
13
- * @version 1.96.5
13
+ * @version 1.99.0
14
14
  * @namespace
15
15
  */
16
16
  var TableRenderer = {};
@@ -19,7 +19,7 @@ sap.ui.define(function() {
19
19
  * Renders the HTML for the given control, using the provided {@link sap.ui.core.RenderManager}.
20
20
  *
21
21
  * @param {sap.ui.core.RenderManager} rm The RenderManager that can be used for writing to the render output buffer.
22
- * @param {sap.ui.core.Control} oTable An object representation of the control that should be rendered.
22
+ * @param {sap.ui.dt.enablement.report.Table} oTable An object representation of the control that should be rendered.
23
23
  */
24
24
  TableRenderer.render = function(rm, oTable) {
25
25
  rm.addClass("sapUiDtTableReport");
@@ -23,7 +23,7 @@ function (
23
23
  * @namespace
24
24
  * @name sap.ui.dt
25
25
  * @author SAP SE
26
- * @version 1.96.5
26
+ * @version 1.99.0
27
27
  * @since 1.30
28
28
  * @experimental This class is experimental and provides only limited functionality. Also the API might be changed in future.
29
29
  * @private
@@ -32,7 +32,7 @@ function (
32
32
  // delegate further initialization of this library to the Core
33
33
  sap.ui.getCore().initLibrary({
34
34
  name: "sap.ui.dt",
35
- version: "1.96.5",
35
+ version: "1.99.0",
36
36
  dependencies: ["sap.ui.core"],
37
37
  types: [
38
38
  "sap.ui.dt.SelectionMode"
@@ -34,7 +34,7 @@ sap.ui.define([
34
34
  * @class The ContextMenu registers event handler to open the context menu. Menu entries can dynamically be added
35
35
  * @extends sap.ui.dt.Plugin
36
36
  * @author SAP SE
37
- * @version 1.96.5
37
+ * @version 1.99.0
38
38
  * @constructor
39
39
  * @private
40
40
  * @since 1.53
@@ -136,11 +136,13 @@ sap.ui.define([
136
136
 
137
137
  /**
138
138
  * Opens the Context Menu
139
- * @param {sap.ui.dt.Overlay} oOverlay overlay object
140
- * @param {boolean} bContextMenu whether the control should be opened as a context menu
141
- * @param {boolean} bIsSubMenu whether the new ContextMenu is a SubMenu opened by a menu item inside another ContextMenu
139
+ * @param {sap.ui.dt.Overlay} oOverlay - Overlay object
140
+ * @param {boolean} bContextMenu - Whether the control should be opened as a context menu
141
+ * @param {boolean} bIsSubMenu - Whether the new ContextMenu is a SubMenu opened by a menu item inside another ContextMenu
142
+ * @param {object} oEvent - Click event of the menu
142
143
  */
143
144
  ContextMenu.prototype.open = function (oOverlay, bContextMenu, bIsSubMenu, oEvent) {
145
+ var aSelectedOverlays;
144
146
  function addMenuItems(oMenu, aMenuItems) {
145
147
  aMenuItems.forEach(function(oMenuItem, index) {
146
148
  var sText = typeof oMenuItem.text === "function" ? oMenuItem.text(oOverlay) : oMenuItem.text;
@@ -183,7 +185,7 @@ sap.ui.define([
183
185
  this.setContextElement(oNewContextElement);
184
186
  this.getDesignTime().getSelectionManager().attachChange(this._onSelectionChanged, this);
185
187
 
186
- var aSelectedOverlays = this.getSelectedOverlays().filter(function (oElementOverlay) {
188
+ aSelectedOverlays = this.getSelectedOverlays().filter(function (oElementOverlay) {
187
189
  return oElementOverlay !== oOverlay;
188
190
  });
189
191
  aSelectedOverlays.unshift(oOverlay);
@@ -26,7 +26,7 @@ sap.ui.define([
26
26
  * @class The ControlDragDrop enables D&D functionality for the overlays based on aggregation types
27
27
  * @extends sap.ui.dt.plugin.DragDrop
28
28
  * @author SAP SE
29
- * @version 1.96.5
29
+ * @version 1.99.0
30
30
  * @constructor
31
31
  * @private
32
32
  * @since 1.30
@@ -33,7 +33,7 @@ sap.ui.define([
33
33
  * @class The CutPaste enables Cut & Paste functionality for the overlays based on aggregation types
34
34
  * @extends sap.ui.dt.Plugin
35
35
  * @author SAP SE
36
- * @version 1.96.5
36
+ * @version 1.99.0
37
37
  * @constructor
38
38
  * @private
39
39
  * @since 1.34