jgraph / drawio

draw.io is a JavaScript, client-side editor for general diagramming.
https://www.drawio.com
Other
31 stars 13 forks source link

[Feature request] Hot-Keys for Shapes, Connectors, and Styles #4700

Open cloudsfixed opened 1 month ago

cloudsfixed commented 1 month ago

Is your feature request related to a problem? Please describe. I'd like to be able to rapidly iterate on ideas, putting them out on the canvas while I'm brainstorming, while I'm in the flow state, but working with multiple shapes, connectors, and different styles for them can be slow, require clicking multiple times, moving the mouse too much, hovering over the edges and waiting for the popups, moving the placed elements, changing the styles back and forth, copying certain elements with needed style then editing them so it's quicker than editing each elements style, and so on. That can get frustrating.

Describe the solution you'd like Hot-keys to choose shapes, connector types, styles. Examples of default hot-keys could be:

On pressing a hot-key the element can be created on the mouse position or connected to the selected element. For example:

Later on new functionality can be added, that lets a user choose a shape like a tool in common design software, where clicking on a shape doesn't create it in the center of the screen/canvas, but selects it, and user can create it in the size/dimensions they want by clicking and dragging the mouse.

// might edit later to add mockup designs

// edit 1: i don't know how to select the "feature request" label

davidjgraph commented 1 month ago

https://webapps.stackexchange.com/questions/82354/add-keyboard-shortcuts-to-draw-io-to-insert-a-given-element

cloudsfixed commented 1 month ago

Thanks, I will be using that.

But, I believe the suggestion could improve UX as a built-in out-of-the-box feature. Especially, because a lot of users probably don't use plugins or know how to use them.

Plugins also aren't available on the desktop app (on windows at least).

Can this feature request stay open if it's low priority, so it can be thought out and designed better to possibly make the implementation easier, quicker, and the usability better?