voo_node_canvas 0.1.4
voo_node_canvas: ^0.1.4 copied to clipboard
A node-based canvas widget for creating visual node graphs with draggable nodes and connections
Changelog #
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
0.1.4 - 2026-01-27 #
Added #
- Native node grouping with
NodeGroupentity GroupPainterandGroupLayerfor visual group rendering (rounded rect, dashed border, label)- Controller operations:
createGroup,removeGroup,updateGroup,addNodeToGroup,removeNodeFromGroup - Group selection:
selectGroup,deselectAllGroups - Group dragging: moves all member nodes together with independent snap-to-grid
onGroupTapandonGroupMovedcallbacks onVooNodeCanvas- Ctrl/Cmd+G keyboard shortcut to group selected nodes
- JSON serialization for groups (
toJson/fromJson) - Undo/redo support for all structural group operations
- Delete key removes selected groups
- Nodes removed from groups when individually deleted
0.1.3 - 2025-11-26 #
Fixed #
- Fixed hit testing for nodes and ports positioned far from the canvas origin
- Nodes and ports now remain interactive regardless of zoom level or position
- Fixed node dragging lag when zoomed out by using offset-based positioning
- Added direct pointer handling that bypasses Flutter's constraint-limited hit testing
- Added manual hover tracking for nodes and ports at any canvas position
- Transform alignment now correctly uses top-left origin for coordinate transforms
0.1.2 - 2025-11-26 #
Added #
- Undo/redo support with configurable history size (default 50 states)
- Keyboard shortcuts: Ctrl/Cmd+Z (undo), Ctrl/Cmd+Shift+Z or Ctrl/Cmd+Y (redo)
- Marquee selection with Shift+drag to select multiple nodes and connections
- Connection clicking and selection support
- Ctrl/Cmd+A to select all nodes
- Shift+click for multi-select on nodes
- Port color customization with
highlightColorandconnectedColoronNodePort - Port hover effects with animated visual feedback
portHitToleranceandportHighlightColorconfig optionsconnectionHitToleranceconfig for easier connection clicking
0.1.1 - 2025-11-23 #
Fixed #
- Snap-to-grid now works smoothly by tracking raw position during drag operations
- Connection line now follows cursor correctly at all zoom levels
- Node dragging responds correctly at all zoom levels
0.0.1 - 2024-11-23 #
Added #
- Initial release of voo_node_canvas
- Infinite canvas with pan and zoom support
- Draggable nodes with customizable content
- Input/output ports for node connections
- Bezier curve connections between nodes
- Grid background with snap-to-grid support
- Canvas configuration options
- Canvas controller for state management