@eclipse-scout/core 22.0.26 → 22.0.33
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/dist/eclipse-scout-core-b11dde8e4ac1367f5a06.min.js +2 -0
- package/dist/eclipse-scout-core-b11dde8e4ac1367f5a06.min.js.map +1 -0
- package/dist/eclipse-scout-core-theme-dark-0d9d468e5722f73f5075.min.css +1 -0
- package/dist/eclipse-scout-core-theme-dark.css +1 -0
- package/dist/eclipse-scout-core-theme-dark.css.map +1 -1
- package/dist/eclipse-scout-core-theme-db0af3fa95956b820bfc.min.css +1 -0
- package/dist/eclipse-scout-core-theme.css +1 -0
- package/dist/eclipse-scout-core-theme.css.map +1 -1
- package/dist/eclipse-scout-core.js +43 -10
- package/dist/eclipse-scout-core.js.map +1 -1
- package/dist/file-list +4 -4
- package/package.json +3 -3
- package/src/desktop/outline/Outline.less +1 -0
- package/src/desktop/outline/OutlineLayout.js +1 -1
- package/src/desktop/outline/PageLayout.js +5 -2
- package/src/layout/graphics.js +15 -1
- package/src/tree/Tree.js +9 -5
- package/dist/eclipse-scout-core-a56958ac9954d00cc62a.min.js +0 -2
- package/dist/eclipse-scout-core-a56958ac9954d00cc62a.min.js.map +0 -1
- package/dist/eclipse-scout-core-theme-dark-fd0e080c10f65e67b68b.min.css +0 -1
- package/dist/eclipse-scout-core-theme-f3a61fbc12acf8e27fcc.min.css +0 -1
package/dist/file-list
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
eclipse-scout-core-
|
|
2
|
-
eclipse-scout-core-
|
|
3
|
-
eclipse-scout-core-theme-dark-
|
|
1
|
+
eclipse-scout-core-b11dde8e4ac1367f5a06.min.js
|
|
2
|
+
eclipse-scout-core-b11dde8e4ac1367f5a06.min.js.map
|
|
3
|
+
eclipse-scout-core-theme-dark-0d9d468e5722f73f5075.min.css
|
|
4
4
|
eclipse-scout-core-theme-dark.css
|
|
5
5
|
eclipse-scout-core-theme-dark.css.map
|
|
6
|
-
eclipse-scout-core-theme-
|
|
6
|
+
eclipse-scout-core-theme-db0af3fa95956b820bfc.min.css
|
|
7
7
|
eclipse-scout-core-theme.css
|
|
8
8
|
eclipse-scout-core-theme.css.map
|
|
9
9
|
eclipse-scout-core.js
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@eclipse-scout/core",
|
|
3
|
-
"version": "22.0.
|
|
3
|
+
"version": "22.0.33",
|
|
4
4
|
"description": "Eclipse Scout runtime",
|
|
5
5
|
"author": "BSI Business Systems Integration AG",
|
|
6
6
|
"homepage": "https://www.eclipse.org/scout",
|
|
@@ -26,12 +26,12 @@
|
|
|
26
26
|
"src"
|
|
27
27
|
],
|
|
28
28
|
"devDependencies": {
|
|
29
|
-
"@eclipse-scout/cli": "22.0.
|
|
29
|
+
"@eclipse-scout/cli": "22.0.33",
|
|
30
30
|
"@eclipse-scout/releng": "^22.0.0",
|
|
31
31
|
"jasmine-core": "3.10.1",
|
|
32
32
|
"jasmine-ajax": "4.0.0",
|
|
33
33
|
"jasmine-jquery": "2.1.1",
|
|
34
|
-
"karma": "6.3.
|
|
34
|
+
"karma": "6.3.20"
|
|
35
35
|
},
|
|
36
36
|
"dependencies": {
|
|
37
37
|
"jquery": "3.6.0",
|
|
@@ -322,6 +322,7 @@
|
|
|
322
322
|
&.selected {
|
|
323
323
|
display: flex;
|
|
324
324
|
flex-wrap: wrap; // Move detail menubar to next line
|
|
325
|
+
background-clip: content-box; // selection background shines through on the bottom of the node sometimes when zoomed -> makes it slightly better
|
|
325
326
|
}
|
|
326
327
|
|
|
327
328
|
&.child-of-selected.animate-prev-selected {
|
|
@@ -23,7 +23,7 @@ export default class OutlineLayout extends TreeLayout {
|
|
|
23
23
|
|
|
24
24
|
super._layout($container);
|
|
25
25
|
|
|
26
|
-
containerSize = htmlContainer.availableSize()
|
|
26
|
+
containerSize = htmlContainer.availableSize({exact: true})
|
|
27
27
|
.subtract(htmlContainer.insets());
|
|
28
28
|
|
|
29
29
|
if (this.outline.embedDetailContent) {
|
|
@@ -31,7 +31,7 @@ export default class PageLayout extends AbstractLayout {
|
|
|
31
31
|
detailMenuBarHeight = 0,
|
|
32
32
|
textWidth = 0;
|
|
33
33
|
|
|
34
|
-
containerSize = htmlContainer.availableSize()
|
|
34
|
+
containerSize = htmlContainer.availableSize({exact: true}) // exact is important to calculate text width correctly and to prevent node menubar from wrapping
|
|
35
35
|
.subtract(htmlContainer.insets());
|
|
36
36
|
textWidth = containerSize.width;
|
|
37
37
|
|
|
@@ -93,7 +93,9 @@ export default class PageLayout extends AbstractLayout {
|
|
|
93
93
|
// needs a width to be able to calculate the pref height
|
|
94
94
|
textHeight = graphics.prefSize($text, {
|
|
95
95
|
includeMargin: true,
|
|
96
|
-
widthHint: textWidth
|
|
96
|
+
widthHint: textWidth,
|
|
97
|
+
enforceSizeHints: true,
|
|
98
|
+
exact: true
|
|
97
99
|
}).height;
|
|
98
100
|
|
|
99
101
|
if ($icon.length > 0) {
|
|
@@ -106,6 +108,7 @@ export default class PageLayout extends AbstractLayout {
|
|
|
106
108
|
}
|
|
107
109
|
if (this.outline.detailContent) {
|
|
108
110
|
let htmlDetailContent = this.outline.detailContent.htmlComp;
|
|
111
|
+
options = $.extend({}, options, {enforceSizeHints: true, exact: true});
|
|
109
112
|
detailContentPrefSize = htmlDetailContent.prefSize(options).add(htmlDetailContent.margins());
|
|
110
113
|
}
|
|
111
114
|
|
package/src/layout/graphics.js
CHANGED
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
* Contributors:
|
|
9
9
|
* BSI Business Systems Integration AG - initial API and implementation
|
|
10
10
|
*/
|
|
11
|
-
import {arrays,
|
|
11
|
+
import {arrays, Dimension, Insets, objects, Point, Rectangle, scout, scrollbars} from '../index';
|
|
12
12
|
import $ from 'jquery';
|
|
13
13
|
|
|
14
14
|
/**
|
|
@@ -35,6 +35,10 @@ import $ from 'jquery';
|
|
|
35
35
|
*
|
|
36
36
|
* heightHint undefined Same as 'widthHint' but for the height.
|
|
37
37
|
*
|
|
38
|
+
* enforceSizeHints false Sets min/max-width/height in addition to with width/height if widthHint resp. heightHint is set.
|
|
39
|
+
* The browser sometimes makes the element smaller or larger than specified by width/height, especially in a flex container.
|
|
40
|
+
* To prevent that, set this option to true. Default is false, but may change in the future.
|
|
41
|
+
*
|
|
38
42
|
* restoreScrollPositions true By default, the $elem's scrolling position is saved and restored
|
|
39
43
|
* during the execution of this method (because applying
|
|
40
44
|
* intermediate styles for measurement might change the current
|
|
@@ -96,6 +100,16 @@ export function prefSize($elem, options) {
|
|
|
96
100
|
'width': newWidth,
|
|
97
101
|
'height': newHeight
|
|
98
102
|
};
|
|
103
|
+
if (scout.nvl(options.enforceSizeHints, false)) {
|
|
104
|
+
if (objects.isNumber(newWidth)) {
|
|
105
|
+
cssProperties['max-width'] = newWidth;
|
|
106
|
+
cssProperties['min-width'] = newWidth;
|
|
107
|
+
}
|
|
108
|
+
if (objects.isNumber(newHeight)) {
|
|
109
|
+
cssProperties['max-height'] = newHeight;
|
|
110
|
+
cssProperties['min-height'] = newHeight;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
99
113
|
|
|
100
114
|
// modify properties which prevent reading the preferred size
|
|
101
115
|
$elem.css(cssProperties);
|
package/src/tree/Tree.js
CHANGED
|
@@ -398,7 +398,7 @@ export default class Tree extends Widget {
|
|
|
398
398
|
this.scrollToSelection = false;
|
|
399
399
|
let scrollTop = this.$data[0].scrollTop;
|
|
400
400
|
let scrollLeft = this.$data[0].scrollLeft;
|
|
401
|
-
if (this.scrollTop !== scrollTop) {
|
|
401
|
+
if (this.scrollTop !== scrollTop && this.rendered) {
|
|
402
402
|
this._renderViewport();
|
|
403
403
|
}
|
|
404
404
|
this.scrollTop = scrollTop;
|
|
@@ -1915,9 +1915,7 @@ export default class Tree extends Widget {
|
|
|
1915
1915
|
_addToVisibleFlatListNoCheck(node, insertIndex, animatedRendering) {
|
|
1916
1916
|
arrays.insert(this.visibleNodesFlat, node, insertIndex);
|
|
1917
1917
|
this.visibleNodesMap[node.id] = true;
|
|
1918
|
-
|
|
1919
|
-
this.showNode(node, animatedRendering, insertIndex);
|
|
1920
|
-
}
|
|
1918
|
+
this.showNode(node, animatedRendering, insertIndex);
|
|
1921
1919
|
}
|
|
1922
1920
|
|
|
1923
1921
|
scrollTo(node, options) {
|
|
@@ -2154,10 +2152,16 @@ export default class Tree extends Widget {
|
|
|
2154
2152
|
}
|
|
2155
2153
|
}
|
|
2156
2154
|
|
|
2155
|
+
/**
|
|
2156
|
+
* @param {TreeNode} [parentNode]
|
|
2157
|
+
*/
|
|
2157
2158
|
insertNode(node, parentNode) {
|
|
2158
2159
|
this.insertNodes([node], parentNode);
|
|
2159
2160
|
}
|
|
2160
2161
|
|
|
2162
|
+
/**
|
|
2163
|
+
* @param {TreeNode} [parentNode]
|
|
2164
|
+
*/
|
|
2161
2165
|
insertNodes(nodes, parentNode) {
|
|
2162
2166
|
nodes = arrays.ensure(nodes).slice();
|
|
2163
2167
|
if (nodes.length === 0) {
|
|
@@ -3023,7 +3027,7 @@ export default class Tree extends Widget {
|
|
|
3023
3027
|
}
|
|
3024
3028
|
|
|
3025
3029
|
hideNode(node, useAnimation, suppressDetachHandling) {
|
|
3026
|
-
if (!node.attached) {
|
|
3030
|
+
if (!this.rendered || !node.attached) {
|
|
3027
3031
|
return;
|
|
3028
3032
|
}
|
|
3029
3033
|
this.viewRangeDirty = true;
|