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

Skip to content

Commit 2f2c6bb

Browse files
authored
Merge pull request gridstack#518 from radiolips/bugfix/actually-optimize-drag-resize
Bugfix/actually optimize drag resize
2 parents 8a554b3 + 5cf92a3 commit 2f2c6bb

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)