diff options
author | Lauri Ojansivu <x@xet7.org> | 2019-11-13 19:33:13 +0200 |
---|---|---|
committer | Lauri Ojansivu <x@xet7.org> | 2019-11-13 19:40:48 +0200 |
commit | 274a997e62b421b034e1eb0b3a486813fe127240 (patch) | |
tree | 580d0926825d368cf231c0869c4fa5d389ff9a44 /client/components/swimlanes | |
parent | 82f092491467fa773a662eb2a2a9bc9b20646312 (diff) | |
download | wekan-274a997e62b421b034e1eb0b3a486813fe127240.tar.gz wekan-274a997e62b421b034e1eb0b3a486813fe127240.tar.bz2 wekan-274a997e62b421b034e1eb0b3a486813fe127240.zip |
Fix card, list and swimlane move.
Allow moving cards in multiselect mode.
Closes #2771,
closes #2743,
closes #2704,
related #2081
Diffstat (limited to 'client/components/swimlanes')
-rw-r--r-- | client/components/swimlanes/swimlaneHeader.jade | 2 | ||||
-rw-r--r-- | client/components/swimlanes/swimlanes.js | 36 |
2 files changed, 22 insertions, 16 deletions
diff --git a/client/components/swimlanes/swimlaneHeader.jade b/client/components/swimlanes/swimlaneHeader.jade index 72a7f054..4b48b0cc 100644 --- a/client/components/swimlanes/swimlaneHeader.jade +++ b/client/components/swimlanes/swimlaneHeader.jade @@ -17,6 +17,8 @@ template(name="swimlaneFixedHeader") a.fa.fa-plus.js-open-add-swimlane-menu.swimlane-header-plus-icon a.fa.fa-navicon.js-open-swimlane-menu unless isMiniScreen + unless showDesktopDragHandles + a.swimlane-header.handle.fa.fa-arrows.js-swimlane-header-handle if showDesktopDragHandles a.swimlane-header-handle.handle.fa.fa-arrows.js-swimlane-header-handle if isMiniScreen diff --git a/client/components/swimlanes/swimlanes.js b/client/components/swimlanes/swimlanes.js index 8faad870..f2fa882f 100644 --- a/client/components/swimlanes/swimlanes.js +++ b/client/components/swimlanes/swimlanes.js @@ -53,18 +53,6 @@ function initSortable(boardComponent, $listsDom) { }, }; - if (Utils.isMiniScreen) { - $listsDom.sortable({ - handle: '.js-list-handle', - }); - } - - if (!Utils.isMiniScreen && showDesktopDragHandles) { - $listsDom.sortable({ - handle: '.js-list-header', - }); - } - $listsDom.sortable({ tolerance: 'pointer', helper: 'clone', @@ -108,15 +96,29 @@ function initSortable(boardComponent, $listsDom) { ); } - // Disable drag-dropping while in multi-selection mode, or if the current user - // is not a board member boardComponent.autorun(() => { + if ( + Utils.isMiniScreen() || + (!Utils.isMiniScreen() && Meteor.user().hasShowDesktopDragHandles()) + ) { + $listsDom.sortable({ + handle: '.js-list-handle', + }); + } else { + $listsDom.sortable({ + handle: '.js-list-header', + }); + } + const $listDom = $listsDom; if ($listDom.data('sortable')) { $listsDom.sortable( 'option', 'disabled', - MultiSelection.isActive() || !userIsMember(), + // Disable drag-dropping when user is not member + !userIsMember(), + // Not disable drag-dropping while in multi-selection mode + // MultiSelection.isActive() || !userIsMember(), ); } }); @@ -164,7 +166,9 @@ BlazeComponent.extendComponent({ // his mouse. const noDragInside = ['a', 'input', 'textarea', 'p'].concat( - Util.isMiniScreen || (!Util.isMiniScreen && showDesktopDragHandles) + Utils.isMiniScreen() || + (!Utils.isMiniScreen() && + Meteor.user().hasShowDesktopDragHandles()) ? ['.js-list-handle', '.js-swimlane-header-handle'] : ['.js-list-header'], ); |