Repository navigation
Enable canvas selection, rotation, and reversible manual positioning - #97
Conversation
|
thanks, please revise: ui changes
fixation menucurrently, the user cannot undo (without a refresh of the page) the manual movements and fixations
first ideas for the menu: extend/change as you think appropriate but keep the menu small and compact
rotation of selected elementsfor simple structural changes, rotation of the selection is needed
|
|
@martin-raden Updated in 9d6b04d:
All 463 unit tests and the native/bundle, Chromium, Firefox, package, help, and visual checks pass. All five visual fixtures remain unchanged. The new GitHub CI jobs are queued waiting for a runner; they have not started yet. |
Keep canvas controls visible in short windows and make help self-contained
Fix canvas controls and release behavior from #97 review


Closes #74.
Nucleotides, numbering labels, and text labels can be dragged individually or together in both static and force layouts. Ctrl-click toggles selection; Ctrl-drag selects fully enclosed elements. Plain element clicks and Ctrl-clicks on the background clear selection. Ctrl-wheel rotates two or more selected elements around the pointer, while ordinary wheel zoom and background panning remain available.
A compact menu beside Crop counts manually positioned graph nodes and provides select-moved, reset-selection, and undo controls. Reset restores selected nodes to their pre-edit positions and fixation; Undo and Ctrl+Z/Command+Z reverse drags, rotation bursts, and resets. Text labels are excluded from the temporary node count and reset, while their moved positions and undo state update the existing model and share links.
The shared pointer handler accounts for zoom and rotation, cancels on disposal, and retains node edits only for the current rendering. SVG and PNG exports preserve the edited layout and omit selection feedback. Region/subsequence overlays follow static dragging, and force convergence cannot refit a manually adjusted layout. History is capped at 100 edits and clears on rerender or disposal.
Based on and targeting
main-v2. Viewer/API documentation and regression coverage include mixed selections, click clearing, full rectangle containment, transformed dragging and rotation, reset/undo, text sharing, instance isolation, exports, and cancellation.Validation: