Repository navigation
Artboard tool: Shift-drag draws an artboard inside another or marquee-selects artboards - #2497
Conversation
|
Three commits were added today. Two merge |
FredApps
left a comment
There was a problem hiding this comment.
Read the full diff at this head. With the Artboard tool, a Shift-drag inside an artboard now draws a new artboard there, a Shift-click on an artboard toggles it on release, and a Shift-drag on the pasteboard is a marquee whose touched artboards toggle (the last one added becomes active and one always stays selected). Move no longer constrains with Shift, and drawing passes no Shift to the diagonal constraint. The FreeBSD build and test job passed at this head. Approving.
Messhias
left a comment
There was a problem hiding this comment.
Artboard tool: Shift-drag draws an artboard inside another or marquee-selects artboards. Checklist cargo xtask ci is ticked.
…-selects artboards With the Artboard tool, a Shift-press on an artboard toggled it in the selection and started a move, which Shift kept at 45° steps. A Shift-drag on the pasteboard drew a square artboard. The reference app's documentation gives Shift-drag inside an artboard as the way to draw an artboard there, and Shift-drag on the canvas as a marquee that selects artboards. A Shift-click now toggles its artboard when the button comes up. A Shift-drag inside an artboard draws a new artboard (artboard.new), and a Shift-drag on the pasteboard toggles every artboard it touches, the last one added becoming active. Shift no longer constrains an artboard move or keeps a new artboard square, and no other modifier does. Shift on the active artboard's handles still resizes it proportionally. The hint bar names the Shift gestures in every complete catalog, and the cursor is a crosshair over an artboard while Shift is held. Escape while a new artboard was being drawn left the tool. Escape during any drag, the new marquee included, now cancels the drag and keeps the Artboard tool, as it already did during a move or a resize. Docs: docs/target-app-parity.md.
… hint main now lists nl, da and id as complete-menu catalogs, so the two hint fragments this branch adds need rows there too. Each row replaces the old " on the canvas to create one" row, as in the other catalogs.
568a007 to
6f95f1c
Compare
|
Note Currently processing new changes in this PR. This may take a few minutes, please wait... ⚙️ Run configuration
⛔ Files ignored due to path filters: 23
📒 Files selected for processing: 4
✨ Finishing Touches
Comment |
|
Thanks @dotCooCoo, merged. Georgian landed in the meantime as a complete catalog, so I added its rows for the two new Artboard tool hint pieces to your last commit. |
What and why
With the Artboard tool on
main, a Shift-drag inside Artboard 1 moves it, and Shift keeps the move at 45° steps. AShift-drag on the pasteboard draws a square artboard. The default keyboard shortcuts
list "Create artboard inside another artboard | Shift-drag", and Using multiple artboards
(archived copy) says "Shift-click the canvas and drag the cursor to select multiple artboards using a marquee".
A Shift-click still adds an artboard to the selection or takes it out (#1139), now when the button comes up. A
Shift-drag inside an artboard draws a new artboard (
artboard.new), and a Shift-drag on the pasteboard toggles everyartboard it touches, the last one added becoming active. This changes what Shift does with the tool: it no longer
constrains an artboard move or keeps a new artboard square, and no other modifier does. Shift on the active
artboard's handles still resizes it proportionally. The hint bar names the Shift gestures in every complete catalog,
and the cursor is a crosshair over an artboard while Shift is held.
On
main, Escape while a new artboard is being drawn leaves the tool. Escape during any drag, the new marquee included,now cancels the drag and keeps the Artboard tool, as it already did during a move or a resize.
How it was tested
New tests in
crates/tools/src/xform/artboard.rs:a_shift_click_toggles_its_artboard_on_release: the release adds the artboard, and a second click takes it out.a_shift_drag_inside_an_artboard_draws_a_new_one: the release runsartboard.newwith the dragged rectangle, and the drag sends no move.a_shift_drag_on_the_pasteboard_selects_the_artboards_it_touches: marquees toggle the artboards they touch.a_plain_drag_still_moves_and_shift_no_longer_constrains_it: a move and a draw follow the pointer with Shift held.escape_cancels_a_marquee_or_a_new_artboard_and_keeps_the_tool: the next Escape leaves the tool.The first four failed with
main's Shift handling put back into the tool, and the last failed withmain's Escapehandling. Targeted checks: clippy on
vectorcraft-toolsandvectorcraft-ui-egui,cargo fmt --all -- --check,the tools tests for
xform::artboard(17 passed) andguides(36 passed), the ui-eguii18ntests (51 passed) andthe three that Shift-click or press Escape with the Artboard tool (3 passed), and
cargo xtask brands,layersandassets.On Windows 11 (x86-64) with rustc 1.99.0, on top of
mainat e78116e:CRAFT_FONTS_DIR=<craft-fonts checkout> cargo xtask cipasses its 10 steps: 7,854 tests passed, 0 failed, 11 ignored.git merge-treereports no conflicts withmainat e78116e.Checklist
cargo xtask cipasses (fmt, clippy, tests, assets, brands, layers, wasm).unwrap(),expect(),panic!,unreachable!,todo!orunimplemented!outside tests, and no unchecked indexing on data from files, parameters ormessages. Errors are returned as
Resultand shown to the user(why and how).
ASSETS.md.