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

Skip to content

Commit 1fbf9af

Browse files
authored
Merge pull request gridstack#664 from radiolips/feature/661
Allow cloning sidebar items 661, 396, 499
2 parents a4a0016 + 8371934 commit 1fbf9af

File tree

7 files changed

+27
-10
lines changed

7 files changed

+27
-10
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ gridstack.js News
4343
=====
4444

4545
Version 1.0 is coming! Check out the blog post here for more information:
46-
[https://dylandreams.com/2017/04/26/gridstack-10-coming-soon/](https://dylandreams.com/2017/04/26/gridstack-10-coming-soon/)
46+
[https://dylandreams.com/2017/04/26/gridstack-10-coming-soon/](https://dylandreams.com/2017/04/26/gridstack-10-coming-soon/) and [https://dylandreams.com](subscribe to the blog) for more gridstack news and tutorials.
4747

4848

4949
Demo and examples

dist/gridstack.all.js

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

dist/gridstack.js

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -844,6 +844,9 @@
844844
})
845845
.on(self.container, 'dropout', function(event, ui) {
846846
var el = $(ui.draggable);
847+
if (!el.data('_gridstack_node')) {
848+
return;
849+
}
847850
el.unbind('drag', onDrag);
848851
var node = el.data('_gridstack_node');
849852
node.el = null;
@@ -860,10 +863,10 @@
860863
var el = $(ui.draggable).clone(false);
861864
el.data('_gridstack_node', node);
862865
var originalNode = $(ui.draggable).data('_gridstack_node_orig');
863-
if (typeof originalNode !== 'undefined') {
866+
if (typeof originalNode !== 'undefined' && typeof originalNode._grid !== 'undefined') {
864867
originalNode._grid._triggerRemoveEvent();
865868
}
866-
$(ui.draggable).remove();
869+
$(ui.helper).remove();
867870
node.el = el;
868871
self.placeholder.hide();
869872
el
@@ -885,6 +888,9 @@
885888
self._triggerChangeEvent();
886889

887890
self.grid.endUpdate();
891+
$(ui.draggable).unbind('drag', onDrag);
892+
$(ui.draggable).removeData('_gridstack_node');
893+
$(ui.draggable).removeData('_gridstack_node_orig');
888894
});
889895
}
890896
};

dist/gridstack.min.js

Lines changed: 2 additions & 2 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.

doc/CHANGES.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ Change log
55
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
66
**Table of Contents** *generated with [DocToc](http://doctoc.herokuapp.com/)*
77

8+
- [v1.0.0 (development)](#v100-development)
89
- [v0.3.0 (2017-04-21)](#v030-2017-04-21)
910
- [v0.2.6 (2016-08-17)](#v026-2016-08-17)
1011
- [v0.2.5 (2016-03-02)](#v025-2016-03-02)
@@ -17,6 +18,10 @@ Change log
1718

1819
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
1920

21+
## v1.0.0 (development)
22+
23+
- enable sidebar items to be duplicated properly. Pass `helper: 'clone'` in `draggable` options. ([#661](https://github.com/troolee/gridstack.js/issues/661), ([#396](https://github.com/troolee/gridstack.js/issues/396), ([#499](https://github.com/troolee/gridstack.js/issues/499).
24+
2025
## v0.3.0 (2017-04-21)
2126

2227
- remove placeholder when dragging widget below grid (already worked when dragging left, above, and to the right of grid).

src/gridstack.js

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -844,6 +844,9 @@
844844
})
845845
.on(self.container, 'dropout', function(event, ui) {
846846
var el = $(ui.draggable);
847+
if (!el.data('_gridstack_node')) {
848+
return;
849+
}
847850
el.unbind('drag', onDrag);
848851
var node = el.data('_gridstack_node');
849852
node.el = null;
@@ -860,10 +863,10 @@
860863
var el = $(ui.draggable).clone(false);
861864
el.data('_gridstack_node', node);
862865
var originalNode = $(ui.draggable).data('_gridstack_node_orig');
863-
if (typeof originalNode !== 'undefined') {
866+
if (typeof originalNode !== 'undefined' && typeof originalNode._grid !== 'undefined') {
864867
originalNode._grid._triggerRemoveEvent();
865868
}
866-
$(ui.draggable).remove();
869+
$(ui.helper).remove();
867870
node.el = el;
868871
self.placeholder.hide();
869872
el
@@ -885,6 +888,9 @@
885888
self._triggerChangeEvent();
886889

887890
self.grid.endUpdate();
891+
$(ui.draggable).unbind('drag', onDrag);
892+
$(ui.draggable).removeData('_gridstack_node');
893+
$(ui.draggable).removeData('_gridstack_node_orig');
888894
});
889895
}
890896
};

0 commit comments

Comments
 (0)