@syncfusion/ej2-filemanager 24.1.41 → 24.1.44
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/CHANGELOG.md +18 -0
- package/README.md +1 -1
- package/dist/ej2-filemanager.min.js +2 -2
- package/dist/ej2-filemanager.umd.min.js +2 -2
- package/dist/ej2-filemanager.umd.min.js.map +1 -1
- package/dist/es6/ej2-filemanager.es2015.js +38 -4
- package/dist/es6/ej2-filemanager.es2015.js.map +1 -1
- package/dist/es6/ej2-filemanager.es5.js +38 -4
- package/dist/es6/ej2-filemanager.es5.js.map +1 -1
- package/dist/global/ej2-filemanager.min.js +2 -2
- package/dist/global/ej2-filemanager.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/package.json +9 -9
- package/src/file-manager/actions/virtualization.js +3 -0
- package/src/file-manager/common/utility.d.ts +12 -0
- package/src/file-manager/common/utility.js +31 -0
- package/src/file-manager/layout/details-view.js +1 -1
- package/src/file-manager/layout/large-icons-view.js +1 -1
- package/src/file-manager/layout/navigation-pane.js +2 -2
@@ -2063,6 +2063,30 @@ function removeItemClass(parent, value) {
|
|
2063
2063
|
ele[i].classList.remove(value);
|
2064
2064
|
}
|
2065
2065
|
}
|
2066
|
+
/**
|
2067
|
+
* Remove item class handler
|
2068
|
+
*
|
2069
|
+
* @param {Element} scrollParent - specifies the scrolling target.
|
2070
|
+
* @param {IFileManager} parent - specifies the parent.
|
2071
|
+
* @param {string} nodeClass - specifies the node class.
|
2072
|
+
* @param {number} screenY - specifies the vertical (Y) coordinate of the mouse cursor position relative to the entire screen.
|
2073
|
+
* @param {number} clientY - specifies the vertical (Y) coordinate of the mouse cursor position relative to the target element.
|
2074
|
+
* @returns {void}
|
2075
|
+
* @private
|
2076
|
+
*/
|
2077
|
+
function scrollHandler(scrollParent, parent, nodeClass, screenY, clientY) {
|
2078
|
+
var position;
|
2079
|
+
var elementData = scrollParent.getBoundingClientRect();
|
2080
|
+
var node = select("." + nodeClass, scrollParent);
|
2081
|
+
if ((screenY >= (elementData.top + scrollParent.clientHeight - 30)) && !isNullOrUndefined(node)) {
|
2082
|
+
position = (parent.targetModule === 'navigationpane' || parent.targetModule === 'detailsview') ? node.offsetHeight / 2.5 : node.offsetHeight / 4.5;
|
2083
|
+
scrollParent.scrollBy(0, position);
|
2084
|
+
}
|
2085
|
+
if (!isNullOrUndefined(node) && (clientY <= (elementData.top + 30))) {
|
2086
|
+
position = (parent.targetModule === 'navigationpane' || parent.targetModule === 'detailsview') ? node.offsetHeight / 2.5 : node.offsetHeight / 4.5;
|
2087
|
+
scrollParent.scrollBy(0, -position);
|
2088
|
+
}
|
2089
|
+
}
|
2066
2090
|
/**
|
2067
2091
|
* Dragging handler
|
2068
2092
|
*
|
@@ -2083,12 +2107,15 @@ function draggingHandler(parent, args) {
|
|
2083
2107
|
}
|
2084
2108
|
removeBlur(parent, 'hover');
|
2085
2109
|
var node = null;
|
2110
|
+
var scrollParent;
|
2086
2111
|
if (parent.targetModule === 'navigationpane') {
|
2087
2112
|
node = closest(args.target, 'li');
|
2088
2113
|
node.classList.add(HOVER, DROP_FOLDER);
|
2089
2114
|
canDrop = true;
|
2090
2115
|
/* istanbul ignore next */
|
2091
2116
|
parent.treeExpandTimer = window.setTimeout(function () { parent.notify(dragging, args); }, 800);
|
2117
|
+
scrollParent = parent.navigationpaneModule.treeObj.element.parentElement;
|
2118
|
+
scrollHandler(scrollParent, parent, 'e-level-2', args.event.screenY, args.event.y);
|
2092
2119
|
}
|
2093
2120
|
else if (parent.targetModule === 'detailsview') {
|
2094
2121
|
node = closest(args.target, 'tr');
|
@@ -2099,6 +2126,8 @@ function draggingHandler(parent, args) {
|
|
2099
2126
|
node.classList.add(DROP_FILE);
|
2100
2127
|
}
|
2101
2128
|
canDrop = true;
|
2129
|
+
scrollParent = parent.detailsviewModule.gridObj.element.querySelector('.e-content');
|
2130
|
+
scrollHandler(scrollParent, parent, 'e-row', args.event.screenY, args.event.y);
|
2102
2131
|
}
|
2103
2132
|
else if (parent.targetModule === 'largeiconsview') {
|
2104
2133
|
node = closest(args.target, 'li');
|
@@ -2106,6 +2135,8 @@ function draggingHandler(parent, args) {
|
|
2106
2135
|
node.classList.add(HOVER, DROP_FOLDER);
|
2107
2136
|
}
|
2108
2137
|
canDrop = true;
|
2138
|
+
scrollParent = parent.largeiconsviewModule.element.firstElementChild;
|
2139
|
+
scrollHandler(scrollParent, parent, 'e-large-icon', args.event.screenY, args.event.y);
|
2109
2140
|
/* istanbul ignore next */
|
2110
2141
|
}
|
2111
2142
|
else if (parent.targetModule === 'breadcrumbbar') {
|
@@ -4188,7 +4219,7 @@ var LargeIconsView = /** @__PURE__ @class */ (function () {
|
|
4188
4219
|
this.dragObj = new Draggable(this.listElements, {
|
4189
4220
|
enableTailMode: true,
|
4190
4221
|
distance: 5,
|
4191
|
-
enableAutoScroll:
|
4222
|
+
enableAutoScroll: false,
|
4192
4223
|
dragTarget: '.' + LARGE_ICON,
|
4193
4224
|
helper: this.dragHelper.bind(this),
|
4194
4225
|
cursorAt: this.parent.dragCursorPosition,
|
@@ -8652,6 +8683,9 @@ var Virtualization = /** @__PURE__ @class */ (function () {
|
|
8652
8683
|
this.itemList = Array.prototype.slice.call(selectAll('.' + LIST_ITEM, listElements));
|
8653
8684
|
// Append the list element to the large icon element
|
8654
8685
|
this.largeIconInstance.element.appendChild(listElements);
|
8686
|
+
if (this.itemList.length !== 0 && this.largeIconInstance.element.querySelector('.' + EMPTY)) {
|
8687
|
+
this.largeIconInstance.element.removeChild(this.largeIconInstance.element.querySelector('.' + EMPTY));
|
8688
|
+
}
|
8655
8689
|
// Get the total number of items
|
8656
8690
|
this.itemCount = this.getItemCount(Object.keys(this.largeIconInstance.allItems).length);
|
8657
8691
|
// Remove the first child element from the large icon element
|
@@ -8984,7 +9018,7 @@ var NavigationPane = /** @__PURE__ @class */ (function () {
|
|
8984
9018
|
},
|
8985
9019
|
dragStop: dragStopHandler.bind(this, this.parent),
|
8986
9020
|
enableTailMode: true,
|
8987
|
-
enableAutoScroll:
|
9021
|
+
enableAutoScroll: false,
|
8988
9022
|
helper: this.dragHelper.bind(this)
|
8989
9023
|
});
|
8990
9024
|
}
|
@@ -9138,7 +9172,7 @@ var NavigationPane = /** @__PURE__ @class */ (function () {
|
|
9138
9172
|
this.parent.itemData = nodeData;
|
9139
9173
|
var previousPath = this.parent.path;
|
9140
9174
|
var sNode = select('[data-uid="' + this.treeObj.selectedNodes[0] + '"]', this.treeObj.element);
|
9141
|
-
if (!this.isRightClick && this.isSameNodeClicked
|
9175
|
+
if (!this.isRightClick && this.isSameNodeClicked) {
|
9142
9176
|
updatePath(args.node, this.parent.itemData[0], this.parent);
|
9143
9177
|
}
|
9144
9178
|
else {
|
@@ -10803,7 +10837,7 @@ var DetailsView = /** @__PURE__ @class */ (function () {
|
|
10803
10837
|
dragStartHandler(_this.parent, args, _this.dragObj);
|
10804
10838
|
},
|
10805
10839
|
dragStop: dragStopHandler.bind(this, this.parent),
|
10806
|
-
enableAutoScroll:
|
10840
|
+
enableAutoScroll: false,
|
10807
10841
|
helper: this.dragHelper.bind(this)
|
10808
10842
|
});
|
10809
10843
|
}
|