Skip to content

Fix Rectangular Grid click options dialog - #1169

Merged
bflatastic merged 1 commit into
storytold:mainfrom
FredApps:fix/rectangular-grid-click-dialog-validated-20261011
Oct 11, 2026
Merged

bflatastic merged 1 commit into
storytold:mainfrom
FredApps:fix/rectangular-grid-click-dialog-validated-20261011

Conversation

@FredApps

@FredApps FredApps commented Oct 11, 2026 •

Copy link
Copy Markdown
Contributor

What and why

The Rectangular Grid tool already emitted a dialog request on a canvas click, but the UI did not handle it. Connect that route through the existing shared Shape dialog and form. The dialog uses 100 pt dimension defaults, saved divider counts, standard unit-aware length widgets and capitalized labels. Confirmation uses the existing shape and perspective command path and saves tool options after successful creation.

The final diff spans 16 files, with 385 additions and 7 deletions: around 30 production lines, seven focused regressions and two labels in ten catalogs. The bespoke dialog module, process documents and unrelated Linux translation rows were removed.

Validation

Fresh exact-tree validation in a Linux test environment passed all seven local CI gates: 5,337 tests passed, zero failed and four ignored. Upstream was integrated at d1a6926f63f918584ef24589becedaeb4f3d1ffb; the final tested tree is 08ef5b847e9466dd600c310aa68f204a79b647c4, at head 0fbf3bd7873f9f827c5bc891be508d6013742b1f.

Native acceptance passed canvas click, default dimensions, mm/inch edits, divider geometry, undo/redo, Cancel/Escape/reopen, saved counts across tool switching, Enter/repeat and ordinary perspective creation.

The hosted Affinity 3 corpus workflow requires maintainer action (action_required) and has no check runs. Hosted workflow status is separate from these local passes; no hosted CI pass is claimed.

Scope and disclosure

Rectangular Grid single-click options only. Uses original synthetic fixtures. Contributor credit @FredApps. AI-assisted with OpenAI.

@FredApps
FredApps marked this pull request as ready for review October 11, 2026 10:23
@FredApps FredApps mentioned this pull request Oct 11, 2026
4 tasks done
@bflatastic

Copy link
Copy Markdown
Member

Thanks for picking up the Rectangular Grid click dialog @FredApps, and welcome! It's a real gap. The existing shape click dialogs already handle length fields, units and validation (dialogs/shapes.rs, dialogs/tools.rs and the generic form in dialogs/form.rs), so this can be much smaller. About 30 lines would do it:

  1. In tools.rs, open the dialog with width/height ("100 pt") and the saved divider counts.
  2. In form.rs, list width and height under lengths and set the field order.
  3. In shapes.rs, add a title and a confirm arm for shape.rectangularGrid that saves the tool options.

A few smaller points:

  • Please keep catalog rows to strings this PR adds (it currently adds "Linux Display Server" and "X11 (XWayland)").
  • Leave out the unrelated roadmap and process notes.
  • Capitalize the labels like the other dialogs ("Horizontal Dividers:").

Maintainers can't push to this branch, so I can't make the change myself. I'd be glad to merge a slimmer version. If you'd like to chat with the team, come say hi on Discord: https://discord.gg/artcraft

@FredApps

Copy link
Copy Markdown
Contributor Author

Thanks @bflatastic and I'm already in the discord, feel free to message if you'd like to chat.

Updated in 0fbf3bd to use the existing shared dialog path, with 100 pt defaults, saved divider counts and capitalized labels. Removed the custom module, roadmap/process docs and unrelated catalog changes.
All seven local CI gates passed: 5,337 tests passed, zero failed, four ignored. Native UI checks passed too. The hosted workflow still needs approval.
Maintainer edits are enabled now, and the PR is ready for review.

@bflatastic
bflatastic force-pushed the fix/rectangular-grid-click-dialog-validated-20261011 branch from 0fbf3bd to c570414 Compare October 11, 2026 18:30
@bflatastic
bflatastic merged commit 2ac3ba2 into storytold:main Oct 11, 2026
@bflatastic

Copy link
Copy Markdown
Member

Thanks @FredApps, merged! This version is just what I hoped for: it goes through the shared dialog path, has 100 pt defaults and saved counts, and the tests are thorough.

Your branch had intermediate commits that no longer applied to main, so I folded them into one commit (still credited to you) and rebased it. The full local gate passed, and over MCP a Rectangular Grid click opens the rectangularGrid dialog.

#1192 (Polar Grid) can follow the same pattern now. I left notes there.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants