v0.0.0.5-alpha — macOS Canvas UX sprint II
Pre-release
Pre-release
macOS — v0.0.0.5-alpha
New features
Multi-select & Group
- Lasso selection — left-drag on empty canvas draws a rubber-band rectangle; all pieces with any vertex inside are selected. Shift+drag = additive.
- Group / Ungroup — select 2+ pieces → Group button assigns a shared
userGroupId; grouped pieces move together on drag. Groups are persisted in the.4huproject bundle (userGroupsfield). - Right-drag pan — right mouse button drag pans the canvas (replaces the old left-drag-everywhere pan).
Rotate handle
- When 1 piece or 1 group is selected, a
↺handle appears 44 pt above the centroid with an orange dashed stem. - Drag the handle to rotate around the effective centroid. Single piece: only
pieceRotationsupdated. Group: all pieces rotate as a rigid body (bothpieceRotationsandpieceOffsetsupdated per piece).
Smart join / disjoin
- Disjoin (fold → cut): separated piece is nudged +30 mm right/down so it doesn't overlap the parent, instead of auto-arranging everything.
- Join (cut → fold): click 1 shows a dashed preview arrow between piece centroids (mouse proximity determines anchor/moving direction); any click 2 confirms the join and snaps the merged piece to the anchor's old position.
Bug fixes (since v0.0.0.1-alpha)
- Pieces no longer collapse on first edge/flap click after unfold
- Page grid now expands dynamically when dragging pieces beyond boundaries
- Flap direction corrected (was inward, now outward)
- App no longer auto-unfolds on mesh load
Build info
- Branch:
feat/unfold-size-dialog - Commit:
8f8cb35 - 87 unit tests passing
- macOS 13 Ventura or later required
- Ad-hoc signed — right-click → Open on first launch
Installation
- Download
4H-Unfolder_v0.0.0.5-alpha_mac.zip - Unzip and drag
4H Unfolder.appto Applications - First launch: right-click → Open (bypasses Gatekeeper for unsigned builds)