enso-org / enso

Enso Analytics is a self-service data prep and analysis platform designed for data teams.
https://ensoanalytics.com
Apache License 2.0
7.38k stars 323 forks source link

List Editor widget #8261

Closed farmaazon closed 11 months ago

farmaazon commented 1 year ago

List editor widget should allow adding, removing and moving elements by drag'n'drop.

If the mouse cursor is in the area between elements, it should change shape and color to indicate that adding is possible. Pressing in this area adds default element. Also, the + icon should appear at least in an empty vector, which adds elements at the end.

Image

### Tasks
- [x] List Editor which allows adding entries and reading configuration
- [x] Dragging and removing in List Editor
farmaazon commented 1 year ago

Refinement notes:

farmaazon commented 12 months ago

Inserting things between existing elements should be skipped in this implementation.

somebody1234 commented 12 months ago

Yeah, that's fair. For now, it should be easy enough to add an element to the end and then drag it into place anyway

somebody1234 commented 12 months ago

regarding dragging: for now i've decided to register both click and cmd+click. nested widgets should still work when using click, as the events bubble up (and can be handled in an inner widget)

shift+click is not an option due to a bug in chrome: https://bugs.chromium.org/p/chromium/issues/detail?id=982219

982219 - chromium - An open-source project to help move the web forward. - Monorail
enso-bot[bot] commented 12 months ago

E-Hern Lee reports a new STANDUP for today (2023-11-22):

Progress: - initial UI

enso-bot[bot] commented 11 months ago

E-Hern Lee reports a new STANDUP for yesterday (2023-11-23):

Progress: - attempt to implement dragging for elements (lots of debugging)

other issues -

Next Day: try to fix dragging, use HTML element for drag image instead of HTML DnD image

enso-bot[bot] commented 11 months ago

E-Hern Lee reports a new STANDUP for today (2023-11-24):

Progress: - implement dragging for elements! (both moving around, and removing element)

website2 -