@sapui5/sap.ui.vbm 1.96.1 → 1.96.5

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 (103) hide show
  1. package/package.json +1 -1
  2. package/src/sap/ui/vbm/.library +1 -1
  3. package/src/sap/ui/vbm/Adapter.js +2 -2
  4. package/src/sap/ui/vbm/Adapter3D.js +5 -2
  5. package/src/sap/ui/vbm/AnalyticMap.js +1 -1
  6. package/src/sap/ui/vbm/AnalyticMapRenderer.js +1 -1
  7. package/src/sap/ui/vbm/Area.js +1 -1
  8. package/src/sap/ui/vbm/Areas.js +1 -1
  9. package/src/sap/ui/vbm/Box.js +1 -1
  10. package/src/sap/ui/vbm/Boxes.js +1 -1
  11. package/src/sap/ui/vbm/Circle.js +1 -1
  12. package/src/sap/ui/vbm/Circles.js +1 -1
  13. package/src/sap/ui/vbm/Cluster.js +1 -1
  14. package/src/sap/ui/vbm/ClusterBase.js +3 -3
  15. package/src/sap/ui/vbm/ClusterContainer.js +1 -1
  16. package/src/sap/ui/vbm/ClusterDistance.js +1 -1
  17. package/src/sap/ui/vbm/ClusterGrid.js +1 -1
  18. package/src/sap/ui/vbm/ClusterRenderer.js +1 -1
  19. package/src/sap/ui/vbm/ClusterTree.js +1 -1
  20. package/src/sap/ui/vbm/Container.js +1 -1
  21. package/src/sap/ui/vbm/Containers.js +1 -1
  22. package/src/sap/ui/vbm/DragSource.js +1 -1
  23. package/src/sap/ui/vbm/DropTarget.js +1 -1
  24. package/src/sap/ui/vbm/Feature.js +1 -1
  25. package/src/sap/ui/vbm/FeatureCollection.js +1 -1
  26. package/src/sap/ui/vbm/GeoCircle.js +1 -1
  27. package/src/sap/ui/vbm/GeoCircles.js +1 -1
  28. package/src/sap/ui/vbm/GeoJsonLayer.js +1 -1
  29. package/src/sap/ui/vbm/GeoMap.js +1 -1
  30. package/src/sap/ui/vbm/GeoMapRenderer.js +1 -1
  31. package/src/sap/ui/vbm/HeatPoint.js +1 -1
  32. package/src/sap/ui/vbm/Heatmap.js +1 -1
  33. package/src/sap/ui/vbm/Legend.js +1 -1
  34. package/src/sap/ui/vbm/LegendItem.js +1 -1
  35. package/src/sap/ui/vbm/Pie.js +1 -1
  36. package/src/sap/ui/vbm/PieItem.js +1 -1
  37. package/src/sap/ui/vbm/Pies.js +1 -1
  38. package/src/sap/ui/vbm/Region.js +1 -1
  39. package/src/sap/ui/vbm/Resource.js +1 -1
  40. package/src/sap/ui/vbm/Route.js +1 -1
  41. package/src/sap/ui/vbm/Routes.js +1 -1
  42. package/src/sap/ui/vbm/Spot.js +1 -1
  43. package/src/sap/ui/vbm/Spots.js +1 -1
  44. package/src/sap/ui/vbm/VBI.js +1 -1
  45. package/src/sap/ui/vbm/VBIRenderer.js +1 -1
  46. package/src/sap/ui/vbm/Viewport.js +8 -3
  47. package/src/sap/ui/vbm/ViewportRenderer.js +1 -1
  48. package/src/sap/ui/vbm/VoAbstract.js +1 -1
  49. package/src/sap/ui/vbm/VoAggregation.js +1 -1
  50. package/src/sap/ui/vbm/VoBase.js +1 -1
  51. package/src/sap/ui/vbm/adapter3d/ModelHandler.js +26 -15
  52. package/src/sap/ui/vbm/adapter3d/ObjectFactory.js +2 -2
  53. package/src/sap/ui/vbm/adapter3d/PolygonHandler.js +32 -26
  54. package/src/sap/ui/vbm/adapter3d/SceneBuilder.js +14 -3
  55. package/src/sap/ui/vbm/adapter3d/Utilities.js +1 -1
  56. package/src/sap/ui/vbm/adapter3d/VBIJSONParser.js +2 -2
  57. package/src/sap/ui/vbm/lib/sapactions.js +1 -1
  58. package/src/sap/ui/vbm/lib/sapautomations.js +1 -1
  59. package/src/sap/ui/vbm/lib/sapconfig.js +1 -1
  60. package/src/sap/ui/vbm/lib/sapdataprovider.js +1 -1
  61. package/src/sap/ui/vbm/lib/sapevents.js +1 -1
  62. package/src/sap/ui/vbm/lib/sapgeolocation.js +1 -1
  63. package/src/sap/ui/vbm/lib/sapgeomath.js +1 -1
  64. package/src/sap/ui/vbm/lib/sapgeotool.js +1 -1
  65. package/src/sap/ui/vbm/lib/sapheatmap.js +1 -1
  66. package/src/sap/ui/vbm/lib/saplabels.js +1 -1
  67. package/src/sap/ui/vbm/lib/saplassotrack.js +1 -1
  68. package/src/sap/ui/vbm/lib/sapmaplayer.js +1 -1
  69. package/src/sap/ui/vbm/lib/sapmapmanager.js +1 -1
  70. package/src/sap/ui/vbm/lib/sapmapprovider.js +1 -1
  71. package/src/sap/ui/vbm/lib/sapnavigation.js +1 -1
  72. package/src/sap/ui/vbm/lib/sapparsing.js +1 -1
  73. package/src/sap/ui/vbm/lib/sappositioning.js +1 -1
  74. package/src/sap/ui/vbm/lib/sapprojection.js +1 -1
  75. package/src/sap/ui/vbm/lib/saprecttrack.js +1 -1
  76. package/src/sap/ui/vbm/lib/sapresources.js +1 -1
  77. package/src/sap/ui/vbm/lib/sapscale.js +1 -1
  78. package/src/sap/ui/vbm/lib/sapscene.js +19 -13
  79. package/src/sap/ui/vbm/lib/saputilities.js +6 -1
  80. package/src/sap/ui/vbm/lib/sapvbcluster.js +1 -1
  81. package/src/sap/ui/vbm/lib/sapvbi.js +1 -1
  82. package/src/sap/ui/vbm/lib/sapvbicontext.js +1 -1
  83. package/src/sap/ui/vbm/lib/sapvbmenu.js +1 -1
  84. package/src/sap/ui/vbm/lib/sapvobase.js +2 -2
  85. package/src/sap/ui/vbm/lib/sapvoutils.js +1 -1
  86. package/src/sap/ui/vbm/lib/sapwindow.js +1 -1
  87. package/src/sap/ui/vbm/library.js +3 -3
  88. package/src/sap/ui/vbm/themes/base/library.source.less +1 -1
  89. package/src/sap/ui/vbm/themes/sap_belize/library.source.less +1 -1
  90. package/src/sap/ui/vbm/themes/sap_belize_hcb/AnalyticMap.less +4 -0
  91. package/src/sap/ui/vbm/themes/sap_belize_hcb/VBI.less +96 -0
  92. package/src/sap/ui/vbm/themes/sap_belize_hcb/library.source.less +5 -2
  93. package/src/sap/ui/vbm/themes/sap_belize_hcw/library.source.less +1 -1
  94. package/src/sap/ui/vbm/themes/sap_belize_plus/library.source.less +1 -1
  95. package/src/sap/ui/vbm/themes/sap_bluecrystal/library.source.less +1 -1
  96. package/src/sap/ui/vbm/themes/sap_fiori_3/library.source.less +1 -1
  97. package/src/sap/ui/vbm/themes/sap_fiori_3_dark/library.source.less +1 -1
  98. package/src/sap/ui/vbm/themes/sap_fiori_3_hcb/AnalyticMap.less +4 -0
  99. package/src/sap/ui/vbm/themes/sap_fiori_3_hcb/VBI.less +96 -0
  100. package/src/sap/ui/vbm/themes/sap_fiori_3_hcb/library.source.less +4 -1
  101. package/src/sap/ui/vbm/themes/sap_fiori_3_hcw/library.source.less +1 -1
  102. package/src/sap/ui/vbm/themes/sap_hcb/library.source.less +1 -1
  103. package/src/sap/ui/vbm/themes/sap_horizon/library.source.less +1 -1
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // Provides the base visual object.
@@ -378,7 +378,7 @@ sap.ui.define([
378
378
  *
379
379
  * @private
380
380
  * @author SAP SE
381
- * @version 1.96.1
381
+ * @version 1.96.5
382
382
  * @alias sap.ui.vbm.adapter3d.ObjectFactory
383
383
  */
384
384
  var ObjectFactory = BaseObject.extend("sap.ui.vbm.adapter3d.ObjectFactory", /** @lends sap.ui.vbm.adapter3d.ObjectFactory.prototype */ {});
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // Provides class sap.ui.vbm.adapter3d.PolygonHandler
@@ -33,9 +33,9 @@ sap.ui.define([
33
33
  *
34
34
  * @private
35
35
  * @author SAP SE
36
- * @version 1.96.1
36
+ * @version 1.96.5
37
37
  * @alias sap.ui.vbm.adapter3d.PolygonHandler
38
- */
38
+ */
39
39
  var PolygonHandler = BaseObject.extend("sap.ui.vbm.adapter3d.PolygonHandler", /** @lends sap.ui.vbm.adapter3d.PolygonHandler.prototype */ {
40
40
 
41
41
  constructor: function(root) {
@@ -98,7 +98,7 @@ sap.ui.define([
98
98
  PolygonHandler.prototype.destroy = function() {
99
99
  // Reset references to shared objects.
100
100
  this._root = null;
101
- this._instances.clear();
101
+ this._hotInstance = null;
102
102
 
103
103
  // destroy 'meta' meshes
104
104
  this._meshes.forEach(function(key, array) {
@@ -113,10 +113,16 @@ sap.ui.define([
113
113
  this._deleteObject3D(border.object3D);
114
114
  }, this);
115
115
  }, this);
116
-
116
+
117
117
  // clear
118
+ this._instances.clear();
119
+ this._instances = null;
120
+
118
121
  this._meshes.clear();
122
+ this._meshes = null;
123
+
119
124
  this._borders.clear();
125
+ this._borders = null;
120
126
 
121
127
  BaseObject.prototype.destroy.call(this);
122
128
  };
@@ -136,11 +142,11 @@ sap.ui.define([
136
142
 
137
143
  /**
138
144
  * Adds polygon instance to polygon handler.
139
- *
145
+ *
140
146
  * @param {object} instance Polygon instance.
141
147
  * @public
142
148
  */
143
- PolygonHandler.prototype.addInstance = function(instance) {
149
+ PolygonHandler.prototype.addInstance = function(instance) {
144
150
  this._instances.set(instance, {
145
151
  instance : instance,
146
152
  indices: [],
@@ -160,11 +166,11 @@ sap.ui.define([
160
166
 
161
167
  /**
162
168
  * Updates polygon instance in polygon handler
163
- *
169
+ *
164
170
  * @param {object} instance Polygon instance.
165
171
  * @public
166
172
  */
167
- PolygonHandler.prototype.updateInstance = function(instance) {
173
+ PolygonHandler.prototype.updateInstance = function(instance) {
168
174
  var data = this._instances.get(instance), updateMesh = false, updateBorder = false;
169
175
  if (data) {
170
176
  // position, rotation, scale [mandatory attributes] when change -> recalculate matrix
@@ -187,7 +193,7 @@ sap.ui.define([
187
193
  }
188
194
 
189
195
  // if any property which affects polygon color changed -> check if polygon color actually changed
190
- // then update polygon color and remove polygon from current 'meta' mesh if it exists
196
+ // then update polygon color and remove polygon from current 'meta' mesh if it exists
191
197
  // and put it into another 'meta' mesh according to polygon updated color
192
198
  // color, selectColor, VB:s [mandatory attributes]
193
199
  if (propertyChanged(instance, ["color", "selectColor", "VB:s"])) {
@@ -328,13 +334,13 @@ sap.ui.define([
328
334
  // create 3 or 2 groups, depends on where hot instance geometry is within 'meta' mesh geometry
329
335
  geometry.addGroup(range.start, data.indices.length, 1); // use hot material with index #1
330
336
 
331
- if (range.start !== 0) {
337
+ if (range.start !== 0) {
332
338
  geometry.addGroup(0, range.start, 0); // use original material with index #0
333
339
  }
334
340
  if (range.start + data.indices.length < geometry.index.count) {
335
341
  geometry.addGroup(range.start + data.indices.length, geometry.index.count - range.start - data.indices.length, 0); // use original material with index #0
336
342
  }
337
- }
343
+ }
338
344
  }
339
345
  if (data.border) { // apply hover on polygon border geometry
340
346
  material = data.border.material;
@@ -364,13 +370,13 @@ sap.ui.define([
364
370
  var vertexCount = data.lines.length/3;
365
371
  geometry.addGroup(range.start, vertexCount, 1); // use hot material with index #1
366
372
 
367
- if (range.start !== 0) {
373
+ if (range.start !== 0) {
368
374
  geometry.addGroup(0, range.start, 0); // use original material with index #0
369
375
  }
370
376
  if (range.start + vertexCount < positions.count) {
371
377
  geometry.addGroup(range.start + vertexCount, positions.count - range.start - vertexCount, 0); // use original material with index #0
372
378
  }
373
- }
379
+ }
374
380
  }
375
381
  } else {
376
382
  Log.error("Unable to find polygon instance data", "", thisModule);
@@ -429,7 +435,7 @@ sap.ui.define([
429
435
 
430
436
  /**
431
437
  * Updates 'meta' meshes requested for rebuild by combining geometry of all instances with the same color into one mesh.
432
- *
438
+ *
433
439
  * @returns {boolean} True if hot instance 'meta' mesh has been recreated.
434
440
  * @private
435
441
  */
@@ -440,11 +446,11 @@ sap.ui.define([
440
446
  for (var i = 0; i < array.length;) {
441
447
  if (array[i].dirty) {
442
448
  var j, instance, base, indices = [], vertices = [], normals = [], data = array[i];
443
-
449
+
444
450
  this._deleteObject3D(data.object3D);
445
451
  data.object3D = null;
446
452
  data.hitInfo.length = 0; // erase hitInfo
447
-
453
+
448
454
  data.instances.forEach(function(range, key) {
449
455
  instance = key; // to access instance outside forEach
450
456
 
@@ -480,24 +486,24 @@ sap.ui.define([
480
486
 
481
487
  if (indices.length) {
482
488
  var geometry = new THREE.BufferGeometry();
483
-
489
+
484
490
  geometry.setIndex(indices);
485
491
  geometry.setAttribute("position", new THREE.Float32BufferAttribute(vertices, 3));
486
492
  geometry.setAttribute("normal", new THREE.Float32BufferAttribute(normals, 3));
487
493
  geometry.computeBoundingBox(); // needed for ray casting
488
494
  geometry.computeBoundingSphere(); // needed for ray casting
489
-
495
+
490
496
  var material = createMaterial(true);
491
497
  material.color.copy(instance.color.rgb);
492
498
  material.opacity = instance.color.opacity;
493
499
  material.transparent = material.opacity < 1;
494
500
  material.needsUpdate = true;
495
-
501
+
496
502
  data.object3D = new THREE.Mesh(geometry, material);
497
503
  data.object3D.matrixAutoUpdate = false;
498
504
  data.object3D.layers.set(0); // put it to layer #0 to enable raycasting
499
505
  this._root.add(data.object3D);
500
-
506
+
501
507
  data.object3D._instanceHitTest = this._instanceHitTest.bind(data); // helper function to return instance based on hit test info
502
508
  data.triangleCount = indices.length/3; // update triangle count on full rebuild
503
509
  }
@@ -528,7 +534,7 @@ sap.ui.define([
528
534
 
529
535
  /**
530
536
  * Updates 'meta' borders requested for rebuild by combining geometry of all instances with the same color into one mesh.
531
- *
537
+ *
532
538
  * @returns {boolean} True if hot instance 'meta' border has been recreated.
533
539
  * @private
534
540
  */
@@ -566,13 +572,13 @@ sap.ui.define([
566
572
  var geometry = new THREE.BufferGeometry();
567
573
  geometry.setAttribute("position", new THREE.Float32BufferAttribute(vertices, 3));
568
574
  geometry.computeBoundingBox();
569
-
575
+
570
576
  var material = createLineMaterial();
571
577
  material.color.copy(instance.colorBorder.rgb);
572
578
  material.opacity = instance.colorBorder.opacity;
573
579
  material.transparent = material.opacity < 1;
574
580
  material.needsUpdate = true;
575
-
581
+
576
582
  data.object3D = new THREE.LineSegments(geometry, material);
577
583
  data.object3D.matrixAutoUpdate = false;
578
584
  data.object3D.layers.set(1); // put it to layer #1 to disable hit test
@@ -740,10 +746,10 @@ sap.ui.define([
740
746
  if (object) {
741
747
  if (object.parent) {
742
748
  object.parent.remove(object);
743
- }
749
+ }
744
750
  if (object.geometry) {
745
751
  object.geometry.dispose();
746
- }
752
+ }
747
753
  Utilities.toArray(object.material).forEach(function(material) {
748
754
  material.dispose(); // no maps to dispose
749
755
  });
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // Provides the base visual object.
@@ -47,7 +47,7 @@ sap.ui.define([
47
47
  *
48
48
  * @private
49
49
  * @author SAP SE
50
- * @version 1.96.1
50
+ * @version 1.96.5
51
51
  * @alias sap.ui.vbm.adapter3d.SceneBuilder
52
52
  */
53
53
  var SceneBuilder = BaseObject.extend("sap.ui.vbm.adapter3d.SceneBuilder", /** @lends sap.ui.vbm.adapter3d.SceneBuilder.prototype */ {
@@ -104,9 +104,11 @@ sap.ui.define([
104
104
  this._scene = null;
105
105
  this._viewport = null;
106
106
  this._context = null;
107
+ this._hotInstance = null;
108
+
107
109
 
108
110
  if (this._box4) {
109
- this._box.dispose();
111
+ this._box4.dispose();
110
112
  }
111
113
  if (this._box6) {
112
114
  this._box6.dispose();
@@ -122,15 +124,22 @@ sap.ui.define([
122
124
  this._decalHelper.material.dispose();
123
125
  this._decalHelper.geometry.dispose();
124
126
  this._scene.remove(this._decalHelper);
127
+ this._decalHelper = null;
125
128
  }
126
129
 
127
130
  this._polygonHandler.destroy();
131
+ this._polygonHandler = null;
132
+
128
133
  this._modelHandler.destroy();
134
+ this._modelHandler = null;
129
135
 
130
136
  this._textures.forEach(function(texture) {
131
137
  texture.dispose();
132
138
  });
133
139
 
140
+ this._targets.clear();
141
+ this._targets = null;
142
+
134
143
  BaseObject.prototype.destroy.call(this);
135
144
  };
136
145
 
@@ -907,6 +916,7 @@ sap.ui.define([
907
916
  material = material || new THREE.MeshPhongMaterial({
908
917
  specular: 0x444444,
909
918
  shininess: 0,
919
+ opacity: 0.99,
910
920
  transparent: true,
911
921
  depthTest: true,
912
922
  depthWrite: false,
@@ -926,6 +936,7 @@ sap.ui.define([
926
936
 
927
937
  var geometry = new THREE.DecalGeometry(target, origin, this._decalHelper.rotation, size);
928
938
  instance.object3D = new THREE.Mesh(geometry, material);
939
+ instance.object3D.renderOrder = 100;
929
940
  instance.object3D.matrixAutoUpdate = false;
930
941
  instance.object3D.layers.set(1); // put it to layer #1 to disable hit test
931
942
  this._scene.add(instance.object3D);
@@ -1,6 +1,6 @@
1
1
  /*!
2
2
  * SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // Provides the base visual object.
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // Provides class sap.ui.vbm.adapter3d.VBIJSONParser
@@ -57,7 +57,7 @@ sap.ui.define([
57
57
  *
58
58
  * @private
59
59
  * @author SAP SE
60
- * @version 1.96.1
60
+ * @version 1.96.5
61
61
  * @alias sap.ui.vbm.adapter3d.VBIJSONParser
62
62
  */
63
63
  var VBIJSONParser = BaseObject.extend("sap.ui.vbm.adapter3d.VBIJSONParser", /** @lends sap.ui.vbm.adapter3d.VBIJSONParser.prototype */ {
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // Actions namespace
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // Automations namespace
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // configuration object
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // DataProvider and DataType namespace
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // this module does the events implementation on a scene
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // Author: Ulrich Roegelein
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // math library for geo
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // tools extensions for VBI namespace
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  sap.ui.define(["./sapvbi"]
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // this module does the label handling
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // this module does the label handling
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // maplayer objects
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // mapmanager object
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // mapprovider object
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  sap.ui.define(["./sapvbi"]
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  sap.ui.define(["./sapvbi"]
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // this module does the label handling
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // this module deals with the projections
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // this module does the label handling
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // resources manager object
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  sap.ui.define(["./sapvbi"]
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // this module does the label handling
@@ -678,18 +678,24 @@ VBI.Scene = function(target) {
678
678
  }
679
679
  // standard case - click on single object
680
680
  if (event.hitTests.length > 0) {
681
- event.hitCached = event.hitTests[0];
682
- var obj = event.hitCached.m_Vo;
683
- delete event.hitTests; //has to be deleted to avoid collecting hits information again
684
- return obj["on" + eventType].call(obj, event);
681
+ event.hitCached = event.hitTests[0]; // cache first hit test
682
+ delete event.hitTests; // has to be deleted to avoid collecting hits information again
683
+ // if there is a VO then pass event to it
684
+ if (event.hitCached.m_Vo) {
685
+ return event.hitCached.m_Vo["on" + eventType].call(event.hitCached.m_Vo, event);
686
+ } else {
687
+ delete event.hitCached; // remove it to keep things going "old" way
688
+ }
689
+ } else {
690
+ return false; // not handled
685
691
  }
686
- } else { // old approach -> process from last to first which corresponds to the rendering order (from topmost to last)
687
- for (var i = scene.m_VOS.length - 1; i >= 0; --i) {
688
- if ((func = scene.m_VOS[i]["on" + eventType]) && typeof (func) == 'function') {
689
- // call the handler with the context set to corresponded visual object
690
- if (func.call(scene.m_VOS[i], event)) {
691
- return true; // handled
692
- }
692
+ }
693
+ // "old" approach -> process from last to first which corresponds to the rendering order (from topmost to last)
694
+ for (var i = scene.m_VOS.length - 1; i >= 0; --i) {
695
+ if ((func = scene.m_VOS[i]["on" + eventType]) && typeof (func) == 'function') {
696
+ // call the handler with the context set to corresponded visual object
697
+ if (func.call(scene.m_VOS[i], event)) {
698
+ return true; // handled
693
699
  }
694
700
  }
695
701
  }
@@ -3352,7 +3358,7 @@ VBI.GeoScene = function(target, mapmanager, maplayerstack) {
3352
3358
  }
3353
3359
  var sCopyright = scene.m_MapLayerStack.GetCopyright();
3354
3360
  if (sCopyright) {
3355
- scene.m_DivCopyright.innerHTML = jQuery.sap.encodeHTML(sCopyright);
3361
+ scene.m_DivCopyright.innerHTML = sCopyright;
3356
3362
  } else {
3357
3363
  scene.m_DivCopyright.style.paddingRight = 0;
3358
3364
  scene.m_DivCopyright.style.paddingLeft = 0;
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // utilities object
@@ -1892,6 +1892,11 @@ VBI.Utilities.AssembleCopyrightString = function(Copyright, CopyrightLink, Copyr
1892
1892
  var regex3 = /\{LINK\|([^\}]+)\}/;
1893
1893
 
1894
1894
  if (Copyright) {
1895
+ if (!CopyrightLink && !CopyrightImage) {
1896
+ Copyright = jQuery.sap.encodeHTML(Copyright);
1897
+ }
1898
+ CopyrightLink = CopyrightLink ? jQuery.sap.encodeHTML(CopyrightLink):CopyrightLink;
1899
+ CopyrightImage = CopyrightImage ? jQuery.sap.encodeHTML(CopyrightImage):CopyrightImage;
1895
1900
  var tmp = Copyright.replace(regex1, "<a href='" + CopyrightLink + "'><img src='" + CopyrightImage + "' width='10' height='10' border='none'></a>");
1896
1901
  tmp = tmp.replace(regex2, "<img src='" + CopyrightImage + "' width='10' height='10' border='none' >");
1897
1902
  return tmp.replace(regex3, "<a href='" + CopyrightLink + "'>$1</a>");
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // this module defines the clustering
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // VBI namespace
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // this module does the vbicontext handling
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // Menus namespace
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // VisualObjects namespace
@@ -1223,7 +1223,7 @@ VBI.VisualObjects = function() {
1223
1223
  }
1224
1224
  // check for design handle context menu subscription.............//
1225
1225
  var action, actions = scene.m_Ctx.m_Actions;
1226
- if (actions && ocb.m_Design && ocb.m_Handle > -1) {
1226
+ if (actions && ocb.m_Design && (ocb.m_Handle > -1 || ocb.m_Hit === VBI.HTBOX)) {
1227
1227
  // the action is raised whenever a design action has stopped..//
1228
1228
  // for the instanced type.....................................//
1229
1229
  // is it a HandleMoved or a HandleClick action ...............//
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // VisualObjects namespace
@@ -1,6 +1,6 @@
1
1
  /*
2
2
  * ! SAPUI5
3
- * (c) Copyright 2009-2021 SAP SE. All rights reserved.
3
+ * (c) Copyright 2009-2022 SAP SE. All rights reserved.
4
4
  */
5
5
 
6
6
  // this module does the window handling