Keyboard Shortcuts

Master keyboard shortcuts for efficient flow editing

Keyboard Shortcuts

Vyuh Node Flow includes built-in keyboard shortcuts for power users. Navigate, select, and manipulate your flow diagrams without touching the mouse.

Platform-Aware: Shortcuts automatically adapt to your platform, using Cmd on macOS and Ctrl on Windows/Linux.

Available Shortcuts

Note: The keyboard shortcut system is extensible, but not all features are currently implemented. The shortcuts listed below are the currently available ones.

Selection

ShortcutActionDescription
Cmd/Ctrl + ASelect allSelect all nodes
Cmd/Ctrl + IInvert selectionInvert current selection
EscapeCancel/ClearCancel operation or clear selection

Editing

ShortcutActionDescription
Delete / BackspaceDeleteDelete selected nodes, connections, and annotations
Cmd/Ctrl + DDuplicateDuplicate selected nodes
NToggle snappingToggle grid snapping on/off
ShortcutActionDescription
FFit all to viewFit all nodes in viewport
HFit selectedFit selected nodes in viewport
Cmd/Ctrl + 0Reset zoomReset zoom to 100%
Cmd/Ctrl + =Zoom inIncrease zoom level
Cmd/Ctrl + -Zoom outDecrease zoom level
MToggle minimapShow/hide minimap

Arrangement

ShortcutActionDescription
[Send to backSend selected items to back layer
]Bring to frontBring selected items to front layer
Cmd/Ctrl + [Send backwardSend selected items backward one layer
Cmd/Ctrl + ]Bring forwardBring selected items forward one layer

Alignment

Requires 2+ nodes: Alignment shortcuts only work when at least 2 nodes are selected.

ShortcutActionDescription
Cmd/Ctrl + Shift + ↑Align topAlign selected nodes to top edge
Cmd/Ctrl + Shift + ↓Align bottomAlign selected nodes to bottom edge
Cmd/Ctrl + Shift + ←Align leftAlign selected nodes to left edge
Cmd/Ctrl + Shift + →Align rightAlign selected nodes to right edge

Not Yet Implemented

The following features are planned but not yet fully implemented:

  • Copy/Cut/Paste (Cmd/Ctrl + C/X/V) - Clipboard functionality pending
  • Undo/Redo - Not currently available
  • Grouping (Cmd/Ctrl + G) - Not currently available
  • Ungrouping (Cmd/Ctrl + Shift + G) - Not currently available

How Shortcuts Work

Keyboard shortcuts are automatically enabled and integrated into the NodeFlowEditor. The shortcuts system is built into the NodeFlowController and requires no additional setup.

// Shortcuts work automatically
final controller = NodeFlowController<MyData>();

NodeFlowEditor(
  controller: controller,
  nodeBuilder: (context, node) => MyNodeWidget(node),
)

The editor internally wraps your content with NodeFlowKeyboardHandler, which manages all keyboard interactions using Flutter's Actions and Shortcuts system.

For Developers: To customize shortcuts or create custom actions, see the Shortcuts & Actions API reference.

Viewing Available Shortcuts

Show users what shortcuts are available:

IconButton(
  icon: Icon(Icons.keyboard),
  onPressed: () {
    showShortcutsDialog(context, controller);
  },
  tooltip: 'Keyboard Shortcuts',
)

The built-in dialog shows all registered actions grouped by category, along with their keyboard shortcuts.

Best Practices

  1. Discoverability: Show keyboard shortcuts in tooltips and provide a shortcuts dialog
  2. Consistency: Follow platform conventions (Cmd on macOS, Ctrl on Windows/Linux)
  3. Visual Feedback: Provide feedback when shortcuts are triggered
  4. Documentation: Make shortcuts visible and discoverable to users

See Also

On this page