LearnNewsExamplesServices
Frontmatter
id16
titleDrag & Drop implementation
stateClosed
labels
enhancementhelp wantedepic
assignees[]
createdAtNov 17, 2019, 5:02 PM
updatedAtAug 31, 2024, 10:54 AM
githubUrlhttps://github.com/neomjs/neo/issues/16
authortobiu
commentsCount1
parentIssuenull
subIssues[]
subIssuesCompleted0
subIssuesTotal0
blockedBy[]
blocking[]
closedAtAug 31, 2024, 10:54 AM

Drag & Drop implementation

Closed v7.0.6/archive-v7-0-6-chunk-1 enhancementhelp wantedepic
tobiu
tobiu commented on Nov 17, 2019, 5:02 PM

I found a very nice ES6 based (MIT licensed) example here:

https://shopify.github.io/draggable/

Source example:

https://github.com/Shopify/draggable/blob/master/src/Draggable/Draggable.js

I think neo.mjs should have a similar solution.

It will get a little bit tricky with our workers setup: Main needs to send the relevant events (dragstart, dragenter, dragleave, drop) to App to execute the handler logic, which will then adjust the DOM.

The only bigger issue is the "dragover" event, which fires incredibly often (could get buffered). In case a dragover-handler only uses trivial logic (e.g. no "this"), it could get moved to the main thread.

tobiu added the enhancement label on Nov 17, 2019, 5:02 PM
tobiu added the help wanted label on Nov 17, 2019, 5:02 PM
tobiu added the epic label on Nov 17, 2019, 5:02 PM
tobiu cross-referenced by #15 on Nov 17, 2019, 5:04 PM
tobiu cross-referenced by #18 on Nov 17, 2019, 5:23 PM
tobiu cross-referenced by #23 on Nov 17, 2019, 5:39 PM
tobiu
tobiu Aug 31, 2024, 10:54 AM

already done.

tobiu closed this issue on Aug 31, 2024, 10:54 AM