Fix drag-n-drop after folder move/create (#1489648)

pull/208/head
Aleksander Machniak 11 years ago
parent 1e09be8a95
commit 2c0d3e1dd0

@ -5891,6 +5891,9 @@ function rcube_webmail()
if (!this.gui_objects.subscriptionlist)
return false;
// disable drag-n-drop temporarily
this.subscription_list.draggable('destroy').droppable('destroy');
var row, n, tmp, tmp_name, rowid, collator, pos, p, parent = '',
folders = [], list = [], slist = [],
list_element = $(this.gui_objects.subscriptionlist);

@ -482,11 +482,13 @@ function rcube_treelist_widget(node, p)
if (keep_content) {
if (draggable_opts) {
if (ui_draggable)
draggable('destroy');
draggable(draggable_opts);
}
if (droppable_opts) {
if (ui_droppable)
droppable('destroy');
droppable(droppable_opts);
}
@ -1061,6 +1063,9 @@ function rcube_treelist_widget(node, p)
if (!opts) opts = {};
if ($.type(opts) == 'string') {
if (opts == 'destroy') {
ui_droppable = null;
}
$('li:not(.virtual)', container).droppable(opts);
return this;
}
@ -1109,6 +1114,9 @@ function rcube_treelist_widget(node, p)
if (!opts) opts = {};
if ($.type(opts) == 'string') {
if (opts == 'destroy') {
ui_draggable = null;
}
$('li:not(.virtual)', container).draggable(opts);
return this;
}
@ -1121,6 +1129,7 @@ function rcube_treelist_widget(node, p)
iframeFix: true,
addClasses: false,
cursorAt: {left: -20, top: 5},
create: function(e, ui) { ui_draggable = ui; },
helper: function(e) {
return $('<div>').attr('id', 'rcmdraglayer')
.text($.trim($(e.target).first().text()));

Loading…
Cancel
Save