@sapui5/sap.suite.ui.commons 1.143.0 → 1.145.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 (126) hide show
  1. package/package.json +1 -1
  2. package/src/sap/suite/ui/commons/.library +1 -1
  3. package/src/sap/suite/ui/commons/AriaProperties.js +1 -1
  4. package/src/sap/suite/ui/commons/CalculationBuilder.js +26 -14
  5. package/src/sap/suite/ui/commons/CalculationBuilderExpression.js +2 -2
  6. package/src/sap/suite/ui/commons/CalculationBuilderFunction.js +1 -1
  7. package/src/sap/suite/ui/commons/CalculationBuilderGroup.js +1 -1
  8. package/src/sap/suite/ui/commons/CalculationBuilderInput.js +5 -5
  9. package/src/sap/suite/ui/commons/CalculationBuilderItem.js +1 -1
  10. package/src/sap/suite/ui/commons/CalculationBuilderValidationResult.js +1 -1
  11. package/src/sap/suite/ui/commons/CalculationBuilderVariable.js +1 -1
  12. package/src/sap/suite/ui/commons/CloudFilePicker.js +1 -3
  13. package/src/sap/suite/ui/commons/MicroProcessFlow.js +77 -73
  14. package/src/sap/suite/ui/commons/MicroProcessFlowItem.js +3 -3
  15. package/src/sap/suite/ui/commons/Timeline.js +9 -0
  16. package/src/sap/suite/ui/commons/TimelineNavigator.js +37 -5
  17. package/src/sap/suite/ui/commons/TimelineRenderer.js +3 -3
  18. package/src/sap/suite/ui/commons/collaboration/BaseHelperService.js +0 -1
  19. package/src/sap/suite/ui/commons/collaboration/CollaborationHelper.js +0 -3
  20. package/src/sap/suite/ui/commons/collaboration/CollaborationManagerService.js +0 -1
  21. package/src/sap/suite/ui/commons/collaboration/ContactHelper.js +7 -0
  22. package/src/sap/suite/ui/commons/collaboration/ContactPopover.fragment.xml +4 -1
  23. package/src/sap/suite/ui/commons/collaboration/MinimalContactPopover.fragment.xml +2 -1
  24. package/src/sap/suite/ui/commons/collaboration/TeamsHelperService.js +0 -6
  25. package/src/sap/suite/ui/commons/collaboration/channels/MessageChannel.js +0 -2
  26. package/src/sap/suite/ui/commons/collaboration/flpplugins/msplugin/Component-preload.js +1 -1
  27. package/src/sap/suite/ui/commons/collaboration/flpplugins/msplugin/Component.js +1 -2
  28. package/src/sap/suite/ui/commons/flexibility/changeHandler/PropertyChangeMapper.js +1 -1
  29. package/src/sap/suite/ui/commons/imageeditor/CropCustomShapeHistoryItem.js +1 -1
  30. package/src/sap/suite/ui/commons/imageeditor/CropEllipseHistoryItem.js +1 -1
  31. package/src/sap/suite/ui/commons/imageeditor/CropRectangleHistoryItem.js +1 -1
  32. package/src/sap/suite/ui/commons/imageeditor/CustomSizeItem.js +1 -1
  33. package/src/sap/suite/ui/commons/imageeditor/FilterHistoryItem.js +1 -1
  34. package/src/sap/suite/ui/commons/imageeditor/FlipHistoryItem.js +1 -1
  35. package/src/sap/suite/ui/commons/imageeditor/HistoryItem.js +1 -1
  36. package/src/sap/suite/ui/commons/imageeditor/ImageEditor.js +1 -1
  37. package/src/sap/suite/ui/commons/imageeditor/ImageEditorContainer.js +1 -1
  38. package/src/sap/suite/ui/commons/imageeditor/ImageEditorResponsiveContainer.js +1 -1
  39. package/src/sap/suite/ui/commons/imageeditor/ResizeHistoryItem.js +1 -1
  40. package/src/sap/suite/ui/commons/imageeditor/RotateHistoryItem.js +1 -1
  41. package/src/sap/suite/ui/commons/library.js +100 -3
  42. package/src/sap/suite/ui/commons/messagebundle.properties +76 -10
  43. package/src/sap/suite/ui/commons/messagebundle_ar.properties +51 -5
  44. package/src/sap/suite/ui/commons/messagebundle_bg.properties +62 -16
  45. package/src/sap/suite/ui/commons/messagebundle_ca.properties +52 -6
  46. package/src/sap/suite/ui/commons/messagebundle_cnr.properties +52 -6
  47. package/src/sap/suite/ui/commons/messagebundle_cs.properties +51 -5
  48. package/src/sap/suite/ui/commons/messagebundle_cy.properties +51 -5
  49. package/src/sap/suite/ui/commons/messagebundle_da.properties +51 -5
  50. package/src/sap/suite/ui/commons/messagebundle_de.properties +52 -6
  51. package/src/sap/suite/ui/commons/messagebundle_el.properties +52 -6
  52. package/src/sap/suite/ui/commons/messagebundle_en.properties +50 -7
  53. package/src/sap/suite/ui/commons/messagebundle_en_GB.properties +52 -6
  54. package/src/sap/suite/ui/commons/messagebundle_en_US_saprigi.properties +54 -6
  55. package/src/sap/suite/ui/commons/messagebundle_es.properties +53 -7
  56. package/src/sap/suite/ui/commons/messagebundle_es_MX.properties +54 -8
  57. package/src/sap/suite/ui/commons/messagebundle_et.properties +51 -5
  58. package/src/sap/suite/ui/commons/messagebundle_fi.properties +51 -5
  59. package/src/sap/suite/ui/commons/messagebundle_fr.properties +52 -6
  60. package/src/sap/suite/ui/commons/messagebundle_fr_CA.properties +52 -6
  61. package/src/sap/suite/ui/commons/messagebundle_hi.properties +52 -6
  62. package/src/sap/suite/ui/commons/messagebundle_hr.properties +52 -6
  63. package/src/sap/suite/ui/commons/messagebundle_hu.properties +51 -5
  64. package/src/sap/suite/ui/commons/messagebundle_id.properties +60 -14
  65. package/src/sap/suite/ui/commons/messagebundle_it.properties +53 -7
  66. package/src/sap/suite/ui/commons/messagebundle_iw.properties +51 -5
  67. package/src/sap/suite/ui/commons/messagebundle_ja.properties +52 -6
  68. package/src/sap/suite/ui/commons/messagebundle_kk.properties +51 -5
  69. package/src/sap/suite/ui/commons/messagebundle_ko.properties +51 -5
  70. package/src/sap/suite/ui/commons/messagebundle_lt.properties +51 -5
  71. package/src/sap/suite/ui/commons/messagebundle_lv.properties +52 -6
  72. package/src/sap/suite/ui/commons/messagebundle_mk.properties +51 -5
  73. package/src/sap/suite/ui/commons/messagebundle_ms.properties +59 -13
  74. package/src/sap/suite/ui/commons/messagebundle_nl.properties +51 -5
  75. package/src/sap/suite/ui/commons/messagebundle_no.properties +52 -6
  76. package/src/sap/suite/ui/commons/messagebundle_pl.properties +51 -5
  77. package/src/sap/suite/ui/commons/messagebundle_pt.properties +52 -6
  78. package/src/sap/suite/ui/commons/messagebundle_pt_PT.properties +51 -5
  79. package/src/sap/suite/ui/commons/messagebundle_ro.properties +51 -5
  80. package/src/sap/suite/ui/commons/messagebundle_ru.properties +51 -5
  81. package/src/sap/suite/ui/commons/messagebundle_sh.properties +52 -6
  82. package/src/sap/suite/ui/commons/messagebundle_sk.properties +51 -5
  83. package/src/sap/suite/ui/commons/messagebundle_sl.properties +51 -5
  84. package/src/sap/suite/ui/commons/messagebundle_sr.properties +52 -6
  85. package/src/sap/suite/ui/commons/messagebundle_sv.properties +51 -5
  86. package/src/sap/suite/ui/commons/messagebundle_th.properties +52 -6
  87. package/src/sap/suite/ui/commons/messagebundle_tr.properties +51 -5
  88. package/src/sap/suite/ui/commons/messagebundle_uk.properties +53 -7
  89. package/src/sap/suite/ui/commons/messagebundle_vi.properties +55 -9
  90. package/src/sap/suite/ui/commons/messagebundle_zh_CN.properties +51 -5
  91. package/src/sap/suite/ui/commons/messagebundle_zh_TW.properties +53 -7
  92. package/src/sap/suite/ui/commons/networkgraph/ElementBase.js +19 -1
  93. package/src/sap/suite/ui/commons/networkgraph/Graph.js +371 -29
  94. package/src/sap/suite/ui/commons/networkgraph/GraphRenderer.js +23 -10
  95. package/src/sap/suite/ui/commons/networkgraph/Group.js +43 -22
  96. package/src/sap/suite/ui/commons/networkgraph/KeyboardNavigator.js +54 -6
  97. package/src/sap/suite/ui/commons/networkgraph/Line.js +736 -31
  98. package/src/sap/suite/ui/commons/networkgraph/Node.js +546 -96
  99. package/src/sap/suite/ui/commons/networkgraph/Tooltip.js +5 -0
  100. package/src/sap/suite/ui/commons/networkgraph/layout/NoopLayout.js +28 -5
  101. package/src/sap/suite/ui/commons/networkgraph/util/ConnectionPathUtils.js +1144 -0
  102. package/src/sap/suite/ui/commons/networkgraph/util/CreateConnectionPopover.js +374 -0
  103. package/src/sap/suite/ui/commons/networkgraph/util/DependencyLayoutHelper.js +870 -0
  104. package/src/sap/suite/ui/commons/networkgraph/util/DragDropManager.js +563 -41
  105. package/src/sap/suite/ui/commons/networkgraph/util/PortManager.js +573 -0
  106. package/src/sap/suite/ui/commons/statusindicator/Circle.js +1 -1
  107. package/src/sap/suite/ui/commons/statusindicator/CustomShape.js +1 -1
  108. package/src/sap/suite/ui/commons/statusindicator/DiscreteThreshold.js +1 -1
  109. package/src/sap/suite/ui/commons/statusindicator/FillingOption.js +1 -1
  110. package/src/sap/suite/ui/commons/statusindicator/LibraryShape.js +1 -1
  111. package/src/sap/suite/ui/commons/statusindicator/Path.js +1 -1
  112. package/src/sap/suite/ui/commons/statusindicator/PropertyThreshold.js +1 -1
  113. package/src/sap/suite/ui/commons/statusindicator/Rectangle.js +1 -1
  114. package/src/sap/suite/ui/commons/statusindicator/Shape.js +1 -1
  115. package/src/sap/suite/ui/commons/statusindicator/ShapeGroup.js +1 -1
  116. package/src/sap/suite/ui/commons/statusindicator/SimpleShape.js +1 -1
  117. package/src/sap/suite/ui/commons/statusindicator/StatusIndicator.js +1 -1
  118. package/src/sap/suite/ui/commons/taccount/TAccount.js +1 -1
  119. package/src/sap/suite/ui/commons/taccount/TAccountGroup.js +1 -1
  120. package/src/sap/suite/ui/commons/taccount/TAccountItem.js +1 -1
  121. package/src/sap/suite/ui/commons/taccount/TAccountItemProperty.js +1 -1
  122. package/src/sap/suite/ui/commons/taccount/TAccountPanel.js +1 -1
  123. package/src/sap/suite/ui/commons/themes/base/NetworkGraph.less +13 -13
  124. package/src/sap/suite/ui/commons/themes/base/NetworkGroup.less +34 -2
  125. package/src/sap/suite/ui/commons/themes/base/NetworkLine.less +58 -13
  126. package/src/sap/suite/ui/commons/themes/base/NetworkNode.less +206 -1
@@ -26,9 +26,11 @@ sap.ui.define([
26
26
  var sLayeredClass = oNetworkGraph._isLayered() ? "sapSuiteUiCommonsNetworkGraphLayered" : "sapSuiteUiCommonsNetworkGraphNotLayered",
27
27
  bSwimLaneClass = oNetworkGraph._isSwimLane() ? "sapSuiteUiCommonsNetworkGraphSwimLane" : "";
28
28
 
29
- oRM.openStart("div",oNetworkGraph);
29
+ oRM.openStart("div", oNetworkGraph);
30
30
  oRM.class("sapSuiteUiCommonsNetworkGraph");
31
- oRM.class(bSwimLaneClass);
31
+ if (bSwimLaneClass) {
32
+ oRM.class(bSwimLaneClass);
33
+ }
32
34
  oRM.class(sLayeredClass);
33
35
  oRM.attr("tabindex", "0");
34
36
  this._appendHeightAndWidth(oNetworkGraph, oRM);
@@ -65,6 +67,14 @@ sap.ui.define([
65
67
  }
66
68
  oRM.openEnd();
67
69
 
70
+ if (oNetworkGraph.getLoading()) {
71
+ this._renderLoading(oRM, oNetworkGraph);
72
+ oRM.close("div");
73
+ oRM.close("div");
74
+ oRM.close("div");
75
+ return;
76
+ }
77
+
68
78
  if (oNetworkGraph.getNoData()) {
69
79
  this._renderNoData(oRM, oNetworkGraph);
70
80
  oRM.close("div");
@@ -164,16 +174,19 @@ sap.ui.define([
164
174
  oRM.class("sapSuiteUiCommonsNetworkGraphNoDataWrapper");
165
175
  oRM.attr("tabindex", "0");
166
176
  oRM.openEnd();
167
- oNetworkGraph._renderHtmlIcon("sap-icon://document", "sapSuiteUiCommonsNetworkGraphNoDataIcon", null, null, null, oRM);
168
-
169
- var sText = oNetworkGraph.getNoDataText(),
170
- sTextInline = sText ? sText : oResourceBundle.getText("NETWORK_GRAPH_NO_DATA");
171
-
177
+ oRM.renderControl(oNetworkGraph._getIllustratedMessage());
178
+ oRM.close("div");
179
+ },
180
+ _renderLoading: function (oRM, oNetworkGraph) {
172
181
  oRM.openStart("div");
173
- oRM.class("sapSuiteUiCommonsNetworkGraphNoDataLabel");
182
+ oRM.class("sapSuiteUiCommonsNetworkGraphLoadingWrapper");
183
+ oRM.attr("tabindex", "0");
174
184
  oRM.openEnd();
175
- oRM.text(sTextInline);
176
- oRM.close("div");
185
+
186
+ // Render the busy indicator
187
+ var oBusyIndicator = oNetworkGraph._getBusyIndicator();
188
+ oRM.renderControl(oBusyIndicator);
189
+
177
190
  oRM.close("div");
178
191
  }
179
192
  };
@@ -201,6 +201,10 @@ sap.ui.define([
201
201
  oRm.openStart("div").class("sapSuiteUiCommonsNetworkTopGroupDelimiter").openEnd().close("div");
202
202
  }
203
203
 
204
+ var sTopGroupClass = "sapSuiteUiCommonsNetworkTopGroup";
205
+ if (!bIsLeft) {
206
+ sTopGroupClass += " sapSuiteUiCommonsNetworkTopGroupRight";
207
+ }
204
208
  this._renderHtmlElement("div", {
205
209
  top: 0,
206
210
  left: iX + "%",
@@ -209,9 +213,8 @@ sap.ui.define([
209
213
  }, {
210
214
  id: sId,
211
215
  "data-sap-ui": sId,
212
- "class": "sapSuiteUiCommonsNetworkTopGroup " + (!bIsLeft ? "sapSuiteUiCommonsNetworkTopGroupRight" : "")
216
+ "class": sTopGroupClass
213
217
  }, oRm);
214
-
215
218
  oRm.openStart("div").class("sapSuiteUiCommonsNetworkTopGroupHeader").openEnd();
216
219
  if (sIcon) {
217
220
  this._renderHtmlIcon(sIcon, null, null, null, null, oRm);
@@ -257,13 +260,17 @@ sap.ui.define([
257
260
  height: iHeight + "px"
258
261
  }, statusStyle, true);
259
262
 
263
+ var sClasses = this._getGroupClass();
264
+ if (statusClass) {
265
+ sClasses += " " + statusClass;
266
+ }
267
+
260
268
  this._renderHtmlElement("div", {}, {
261
269
  id: sId,
262
270
  "data-sap-ui": sId,
263
- "class": this._getGroupClass() + " " + statusClass,
271
+ "class": sClasses,
264
272
  "style": sStyle
265
273
  }, mOptions.renderManager);
266
-
267
274
  this._renderHeader(mOptions);
268
275
  mOptions.renderManager.close("div");
269
276
  }
@@ -275,10 +282,11 @@ sap.ui.define([
275
282
 
276
283
  let applyClasses = (classesInString = "", oRM) => {
277
284
  (classesInString.split(" ") || []).forEach((sClass) => {
278
- oRM.class(sClass);
285
+ if (sClass) {
286
+ oRM.class(sClass);
287
+ }
279
288
  })
280
- }
281
-
289
+ };
282
290
  if (this.getStatus() && this.getStatus() !== ElementStatus.Standard) {
283
291
  var { style: sContentStyle, class: sContentClass } = this._getStatusStyle({
284
292
  "color": ElementBase.ColorType.Content
@@ -342,15 +350,19 @@ sap.ui.define([
342
350
  }
343
351
 
344
352
  if (sTitle) {
345
- mOptions.renderManager.openStart("div").class((sContentClass || '')).class("sapSuiteUiCommonsNetworkGroupHeaderTitle").attr("title", sTitle);
353
+ mOptions.renderManager.openStart("div");
354
+ if (sContentClass) {
355
+ mOptions.renderManager.class(sContentClass);
356
+ }
357
+ mOptions.renderManager.class("sapSuiteUiCommonsNetworkGroupHeaderTitle").attr("title", sTitle);
346
358
  //Add text-Orientation based on Language
347
359
  var sCurrentLanguage = Localization.getLanguage();
348
360
  var aOrientationLanguage = ["ja", "zh-TW", "zh-CN", "ko"]; // Orientation Languages
349
361
  if (this._isVerticalSwimLane()
350
- && (aOrientationLanguage.indexOf(sCurrentLanguage) > -1)) {
351
- sContentStyleVal = (sContentStyleVal || "").length > 0
352
- ? sContentStyleVal.concat(";text-orientation:sideways")
353
- : sContentStyleVal.concat("text-orientation:sideways");
362
+ && (aOrientationLanguage.indexOf(sCurrentLanguage) > -1)) {
363
+ sContentStyleVal = (sContentStyleVal || "").length > 0
364
+ ? sContentStyleVal.concat(";text-orientation:sideways")
365
+ : sContentStyleVal.concat("text-orientation:sideways");
354
366
  }
355
367
  this.applyStyles(mOptions.renderManager, this.getStyleObject(sContentStyleVal));
356
368
  mOptions.renderManager.openEnd();
@@ -387,12 +399,10 @@ sap.ui.define([
387
399
  (this.getCollapsed() ? "sapSuiteUiCommonsNetworkGroupCollapsed" : "sapSuiteUiCommonsNetworkGroupExpanded") +
388
400
  (this._bIsSwimLane ? " sapSuiteUiCommonsNetworkGroupSwimLane" : " sapSuiteUiCommonsNetworkGroupClassic") +
389
401
  (this._isVerticalSwimLane() ? " sapSuiteUiCommonsNetworkGroupVerticalSwimLane" : "") +
390
- (this._isTopBottom() ? " sapSuiteUiCommonsNetworkGroupTopBottom " : "");
402
+ (this._isTopBottom() ? " sapSuiteUiCommonsNetworkGroupTopBottom " : "") +
403
+ (this._isBottomTop() ? " sapSuiteUiCommonsNetworkGroupBottomTop " : "") +
404
+ (this._isRightLeft() ? " sapSuiteUiCommonsNetworkGraphRightLeft " : "");
391
405
 
392
- // Add RightLeft orientation class if swimlane and parent is RightLeft
393
- if (this._bIsSwimLane && this.getParent() && this.getParent().isA("sap.suite.ui.commons.networkgraph.Graph") && this.getParent().getOrientation() === Orientation.RightLeft) {
394
- sClass += " sapSuiteUiCommonsNetworkGraphRightLeft";
395
- }
396
406
  return sClass;
397
407
  };
398
408
 
@@ -719,12 +729,22 @@ sap.ui.define([
719
729
  return oParent && oParent._isTopBottom();
720
730
  };
721
731
 
732
+ Group.prototype._isBottomTop = function () {
733
+ var oParent = this.getParent();
734
+ return oParent && oParent._isBottomTop();
735
+ };
736
+
737
+ Group.prototype._isRightLeft = function () {
738
+ var oParent = this.getParent();
739
+ return oParent && oParent._isRightLeft();
740
+ };
741
+
722
742
  Group.prototype._isVerticalSwimLane = function () {
723
743
  if (this._bIsSwimLane) {
724
- var bTopBottom = this._isTopBottom();
744
+ var bVertical = this._isTopBottom() || this._isBottomTop();
725
745
 
726
- return (bTopBottom && !this.getCollapsed())
727
- || (!bTopBottom && this.getCollapsed());
746
+ return (bVertical && !this.getCollapsed())
747
+ || (!bVertical && this.getCollapsed());
728
748
  }
729
749
 
730
750
  return false;
@@ -831,7 +851,9 @@ sap.ui.define([
831
851
  this.setProperty("collapsed", bCollapsed, true);
832
852
 
833
853
  // when collapsing the group, deselect all child nodes to prevent inconsistency
834
- if (bCollapsed) {
854
+ // Only process nodes if data is fully loaded (not during initial binding)
855
+ var oParentGraph = this.getParent();
856
+ if (bCollapsed && oParentGraph && !oParentGraph._bRequiresDataProcessing) {
835
857
  this.getNodes().forEach(function (oNode) {
836
858
  if (oNode.getSelected()) {
837
859
  oNode.setSelected(false);
@@ -846,7 +868,6 @@ sap.ui.define([
846
868
  }
847
869
  });
848
870
  }
849
-
850
871
  this.aChildGroups.forEach(function (oChildGroup) {
851
872
  fnProcessCollapsedGroup(oChildGroup);
852
873
  });
@@ -14,8 +14,9 @@ sap.ui.define([
14
14
  "sap/ui/events/KeyCodes",
15
15
  "sap/ui/dom/containsOrEquals",
16
16
  "sap/base/Log",
17
- "sap/ui/core/Lib"
18
- ], function (jQuery, BaseObject, Group, Node, Line, KeyCodes, containsOrEquals, Log, CoreLib) {
17
+ "sap/ui/core/Lib",
18
+ "sap/ui/core/Element"
19
+ ], function (jQuery, BaseObject, Group, Node, Line, KeyCodes, containsOrEquals, Log, CoreLib, Element) {
19
20
  "use strict";
20
21
 
21
22
  var mDirections = {
@@ -186,13 +187,15 @@ sap.ui.define([
186
187
  };
187
188
 
188
189
  KeyboardNavigator.prototype.onkeyup = function(oEvent) {
189
- if (oEvent.keyCode === KeyCodes.SPACE){
190
- this._handleEnter();
191
- if (this._oGraph.getFocusDomRef() === document.activeElement) {
190
+ if (oEvent.keyCode === KeyCodes.SPACE){
191
+ this._handleEnter();
192
+ if (this._oGraph.getFocusDomRef() === document.activeElement) {
192
193
  oEvent.stopPropagation();
193
194
  oEvent.preventDefault();
194
- }
195
195
  }
196
+ } else if (oEvent.keyCode === KeyCodes.DELETE || oEvent.keyCode === KeyCodes.BACKSPACE) {
197
+ this._handleDelete(oEvent);
198
+ }
196
199
  };
197
200
 
198
201
  KeyboardNavigator.prototype.onsapenter = function (oEvent) {
@@ -269,6 +272,12 @@ sap.ui.define([
269
272
  this._onCtrlPlus(oEvent);
270
273
  } else if (oEvent.ctrlKey && (oEvent.keyCode === KeyCodes.SLASH || oEvent.keyCode === KeyCodes.NUMPAD_MINUS)) {
271
274
  this._onCtrlMinus(oEvent);
275
+ } else if(oEvent.ctrlKey && oEvent.altKey && oEvent.keyCode === KeyCodes.P) {
276
+ var oAssociatedControl = this._oGraph.getAssociatedControl();
277
+ if (oAssociatedControl) {
278
+ oAssociatedControl.focus();
279
+ oItem._setFocus(false);
280
+ }
272
281
  }
273
282
  };
274
283
 
@@ -324,6 +333,45 @@ sap.ui.define([
324
333
  }
325
334
  };
326
335
 
336
+ KeyboardNavigator.prototype._handleDelete = function (oEvent) {
337
+ // Only handle delete when DnD is enabled
338
+ if (!this._oGraph._isDnDEnabled()) {
339
+ return;
340
+ }
341
+
342
+ var oFocus = this.getFocus();
343
+ if (!oFocus) {
344
+ return;
345
+ }
346
+
347
+ var oItem = oFocus.item;
348
+
349
+ // Only allow delete for Node and Line, not Group
350
+ if (oItem instanceof Node || oItem instanceof Line) {
351
+ oItem.setSelected(false);
352
+
353
+ // Clear focus before delete to prevent stale reference issues
354
+ if (this._oGraph._oFocus && this._oGraph._oFocus.item === oItem) {
355
+ this._oGraph._oFocus = null;
356
+ }
357
+
358
+ // Fire the itemDeleted event on the graph
359
+ var bExecuteDefault = this._oGraph.fireEvent("itemDeleted", {
360
+ item: oItem
361
+ }, true);
362
+
363
+ if (bExecuteDefault) {
364
+ oEvent.stopPropagation();
365
+ oEvent.preventDefault();
366
+ }
367
+
368
+ // Restore focus after a small timeout (to let any rerender settle)
369
+ setTimeout(function () {
370
+ this._oGraph.setFocus(oFocus)
371
+ }.bind(this), 0);
372
+ }
373
+ };
374
+
327
375
  KeyboardNavigator.prototype._handleTab = function (oEvent, sDirection) {
328
376
  var oResourceBundle = CoreLib.getResourceBundleFor("sap.suite.ui.commons");
329
377
  this._oWrapperDom.setAttribute("aria-live","assertive");