Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 5cf92a3

Browse files
committed
Only run checks for drag and resize if x, y, width, or height have changed at least one cell width/height.
1 parent 215a6f1 commit 5cf92a3

File tree

6 files changed

+47
-25
lines changed

6 files changed

+47
-25
lines changed

dist/gridstack.all.js

Lines changed: 8 additions & 10 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/gridstack.jQueryUI.min.js

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/gridstack.js

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -482,6 +482,11 @@
482482
node.width = width;
483483
node.height = height;
484484

485+
node.lastTriedX = x;
486+
node.lastTriedY = y;
487+
node.lastTriedWidth = width;
488+
node.lastTriedHeight = height;
489+
485490
node = this._prepareNode(node, resizing);
486491

487492
this._fixCollisions(node);
@@ -1095,10 +1100,18 @@
10951100
return;
10961101
}
10971102
}
1098-
1099-
if (!self.grid.canMoveNode(node, x, y, width, height)) {
1103+
// width and height are undefined if not resizing
1104+
var lastTriedWidth = typeof width !== 'undefined' ? width : node.lastTriedWidth;
1105+
var lastTriedHeight = typeof height !== 'undefined' ? height : node.lastTriedHeight;
1106+
if (!self.grid.canMoveNode(node, x, y, width, height) ||
1107+
(node.lastTriedX === x && node.lastTriedY === y &&
1108+
node.lastTriedWidth === lastTriedWidth && node.lastTriedHeight === lastTriedHeight)) {
11001109
return;
11011110
}
1111+
node.lastTriedX = x;
1112+
node.lastTriedY = y;
1113+
node.lastTriedWidth = width;
1114+
node.lastTriedHeight = height;
11021115
self.grid.moveNode(node, x, y, width, height);
11031116
self._updateContainerHeight();
11041117
};

dist/gridstack.min.js

Lines changed: 7 additions & 9 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

dist/gridstack.min.map

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

src/gridstack.js

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -482,6 +482,11 @@
482482
node.width = width;
483483
node.height = height;
484484

485+
node.lastTriedX = x;
486+
node.lastTriedY = y;
487+
node.lastTriedWidth = width;
488+
node.lastTriedHeight = height;
489+
485490
node = this._prepareNode(node, resizing);
486491

487492
this._fixCollisions(node);
@@ -1095,10 +1100,18 @@
10951100
return;
10961101
}
10971102
}
1098-
1099-
if (!self.grid.canMoveNode(node, x, y, width, height)) {
1103+
// width and height are undefined if not resizing
1104+
var lastTriedWidth = typeof width !== 'undefined' ? width : node.lastTriedWidth;
1105+
var lastTriedHeight = typeof height !== 'undefined' ? height : node.lastTriedHeight;
1106+
if (!self.grid.canMoveNode(node, x, y, width, height) ||
1107+
(node.lastTriedX === x && node.lastTriedY === y &&
1108+
node.lastTriedWidth === lastTriedWidth && node.lastTriedHeight === lastTriedHeight)) {
11001109
return;
11011110
}
1111+
node.lastTriedX = x;
1112+
node.lastTriedY = y;
1113+
node.lastTriedWidth = width;
1114+
node.lastTriedHeight = height;
11021115
self.grid.moveNode(node, x, y, width, height);
11031116
self._updateContainerHeight();
11041117
};

0 commit comments

Comments
 (0)