lowcoder
lowcoder copied to clipboard
[Feat]: Draggable components in the Active Components view
Is your feature request related to a problem? Please describe. There can be a more intuitive way of moving components around other than manually moving components and cutting/pasting components around, which has a few drawbacks:
Manually moving components drawbacks:
- Clunky UX since everything instantly reacts to components being dragged, making the process not very precise.
Cutting Pasting drawbacks:
- Naming of components are not preserved and default to the automatic naming schema (e.g.
input32), thus, a form that has 20 inputs and referenced in a SQL query all have to renamed from the auto-generated names. - The positioning of the components by pasting them can be tricky and do not always go where intended.
Describe the solution you'd like
Within the Active Components section of the left side-bar, one can use the mouse to click and drag components that alter the positioning of the components relative to the components below/above the selected component. Also, all metadata and nested components within that component are preserved. This feature should also support the ability to drag a component outside a container so it is no longer nested, or inside a container so it is now nested.
It's worth noting that the width of components may need to be change (if allowed) if it wants to fit inside a container with less columns of room than currently using.
Describe alternatives you've considered
- Manually moving the components within the page, but because everything reacts to the dragging components, it can be difficult to place them where you want them to.
- Cutting/pasting components, but it adds a lot of overhead when doing so.
Additional context Add any other context or screenshots about the feature request here.
Note: I created a separate feature for the fact that cutting/pasting components does not preserve component names: https://github.com/lowcoder-org/lowcoder/issues/664
Thank you very much @mdpung for your issue and the feature description. Currently, we work on a "Layer feature", which addresses some of your points and we think it will do it to your satisfaction. We keep the issue open till we release the new abilities and discuss then further.