Commit Graph
178 Commits
Author SHA1 Message Date
BFlat d578f44742 Merge pull request #1878 from TrevorBrown-dev/feat/region-fills
M8: a fill per region: the Fill section and the fill commands edit the regions selected in vector edit mode (#1875)
2026-11-07 12:29:43 +08:00
BFlat 305fc686b2 Merge pull request #1854 from TrevorBrown-dev/fix/control-arrows-pan
Control channel: ui.key arrows pan the view when nothing is selected, as the window does
2026-11-07 12:26:48 +08:00
BFlat f490a9b323 Merge pull request #1762 from dotCooCoo/feat/selection-colors-library
M3: Selection colors rows apply library color styles and create a style
2026-11-07 12:18:35 +08:00
bflatastic 184452c9b3 Docs: region fills row in our own words 2026-11-07 11:12:40 +07:00
bflatastic 16ae1b2273 Region fills: say it in our own words; one row per item after the merge 2026-11-07 11:10:41 +07:00
bflatastic 45ef37fc61 Docs: one row per item after the merge 2026-11-07 11:07:35 +07:00
Trevor BrownandClaude Fable 5.1 3647d9b4c2 Merge upstream/main into fix/control-arrows-pan
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-11-06 22:39:52 -05:00
Trevor BrownandClaude Fable 5.1 13937c70eb Merge upstream/main into feat/region-fills
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-11-06 22:39:44 -05:00
bflatastic 9488088d48 Merge main into #1857 2026-11-07 10:21:28 +07:00
bflatastic a7fc90a7aa Merge main into #1857 2026-11-07 10:08:45 +07:00
bflatastic ba695199f2 Merge main into #2050 2026-11-07 10:06:56 +07:00
bflatastic a7ba9fb460 Merge main into #1855 2026-11-07 09:51:12 +07:00
bflatastic 235a2f3a53 Merge main into #1857 2026-11-07 09:50:38 +07:00
bflatastic 18d0853d9e Merge main into #2050 2026-11-07 09:49:37 +07:00
Trevor BrownandClaude Fable 5.1 09338adbac Merge upstream/main into fix/control-arrows-pan
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-11-06 21:40:27 -05:00
Trevor BrownandClaude Fable 5.1 e4b3815439 Merge upstream/main into feat/region-fills
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-11-06 21:40:15 -05:00
dotCooCoo 10f3e0d589 Merge main into feat/selection-colors-library 2026-11-06 18:39:28 -08:00
bflatastic 6139a37775 Merge main into #1855 2026-11-07 09:38:46 +07:00
bflatastic e619c509a0 Merge main into #1857 2026-11-07 09:38:13 +07:00
bflatastic 905144708b Merge main into #2050 2026-11-07 09:35:50 +07:00
bflatastic 105b3c8d1b Merge main into #2010 2026-11-07 09:35:30 +07:00
bflatastic 52739e28e1 Merge main into #2010 2026-11-07 09:23:17 +07:00
bflatastic 315f7e6755 Merge main into #1855 2026-11-07 09:22:57 +07:00
bflatastic 7c457e854c Merge main into #1857 2026-11-07 09:22:00 +07:00
bflatastic e47c91e131 Merge main into #2048 2026-11-07 09:21:25 +07:00
bflatastic 748a75cdd3 Merge main into #2050 2026-11-07 09:20:52 +07:00
BFlat 72b8d2f05a Merge pull request #1869 from TrevorBrown-dev/fix/place-crosshair
M6: the arrows show and move a placement crosshair with a shape or frame tool chosen, and Enter places there (#1839)
2026-11-07 10:20:06 +08:00
BFlat 5140a59c2e Merge pull request #2009 from ashokram-si/feat/side-buttons-pan-1758
feat(ui): mouse buttons 4 and 5 pan the canvas like the middle button (#1758)
2026-11-07 10:12:52 +08:00
bflatastic d33b30cac4 Merge main into #1855 2026-11-07 09:10:15 +07:00
bflatastic 5560cbdf3b Merge main into #1857 2026-11-07 09:08:29 +07:00
bflatastic 5aaec67e20 Merge main into #1869 2026-11-07 09:07:56 +07:00
bflatastic 3a77c95db5 Merge main into #2010 2026-11-07 09:01:22 +07:00
bflatastic 562d83c161 Merge main into #2048 2026-11-07 09:00:13 +07:00
bflatastic c7570645e8 Merge main into #2050 2026-11-07 08:59:37 +07:00
Trevor Brown ad2c120191 Merge remote-tracking branch 'upstream/main' into feat/region-fills
# Conflicts:
#	crates/ui-egui/src/panels/right/paints.rs
#	docs/ui-parity.md
2026-11-06 20:52:20 -05:00
bflatastic 5f417b201b Merge main into #2009 2026-11-07 08:49:46 +07:00
bflatastic aa9aee4ec5 Merge main into #2010 2026-11-07 08:41:25 +07:00
Trevor BrownandClaude Fable 5.1 08958b47ba Merge upstream/main into fix/control-arrows-pan
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-11-06 20:40:54 -05:00
Trevor BrownandClaude Fable 5.1 fccefb1f39 Merge upstream/main into fix/field-alt-scrub
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-11-06 20:40:52 -05:00
Trevor BrownandClaude Fable 5.1 8a7414e3b0 Merge upstream/main into fix/text-mixed-fill-section
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-11-06 20:40:49 -05:00
Trevor BrownandClaude Fable 5.1 c838f2f587 Merge upstream/main into fix/place-crosshair
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-11-06 20:40:45 -05:00
Trevor BrownandClaude Fable 5.1 5a63c08a78 Merge upstream/main into feat/text-direction-1830
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-11-06 20:40:21 -05:00
bflatastic 162aeb4bda Merge main into #2048 2026-11-07 08:29:53 +07:00
bflatastic 704720d0e1 Merge main into #2050 2026-11-07 08:29:20 +07:00
Filip StrajnarandClaude Opus 5.5 20f1219fbc M1: Set default properties gives new shapes and text the layer's properties (#2028)
Edit ▸ Set default properties put the selected layer's properties into the Paste properties
clipboard and did nothing else: a rectangle drawn afterwards was still the default grey, and what
Copy properties had copied was replaced.

The defaults are now kept apart (`Session::default_props`: one set for shapes, set from any layer
but text, and one for text). Rectangles, ellipses, polygons and stars drawn or clicked with their
tools take the shape defaults: fills, strokes and their settings, effects, opacity, blend and
corners (only where the shape has corners), through `apply_copied_props`, the rules Paste
properties already used (now shared). New text from the Text tool takes a text layer's fills and
font and is laid out at that size. Frames, sections, slices, lines, arrows, vectors and layers made
by commands keep their own look; the help center is silent on those. `edit.setDefaultProperties`
answers `{for: shapes|text, properties}`.

Tests: `default_props_tests::new_shapes_drawn_with_the_tools_take_the_default_properties`,
`setting_defaults_leaves_the_copied_properties_alone`,
`new_text_takes_a_text_layers_defaults_and_shapes_keep_theirs`. Docs: ui-parity.md, ROADMAP.md.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LvG6E2LxvJ6MuFmiLA6Zqm
2026-11-06 12:55:21 +01:00
Filip StrajnarandClaude Opus 5.5 98710acb80 M7: closing a tab with unsaved changes asks Don't Save / Cancel / Save (#2032)
Closing a tab whose file has unsaved changes, by its X, a middle click, File ▸ Close tab or its
shortcut, only showed a toast ("save first, or close again with Alt to discard"; from the menu
"close the tab with Alt-click") and left the tab open, so closing a tab seemed not to work. A
`file.close` refused for unsaved changes asked the UI with `dialog.unsaved`, which toasted too.

Closing such a tab now asks the unsaved-changes question the window asks when it closes
(`windows::unsaved_question`, shared): Don't Save closes the tab and drops the changes, Cancel or
Escape keeps it, Save saves the file next frame and then closes the tab. A file without a path, or
saved as .fig, asks where with Save as first; the tab closes once that saved it and stays open if
it is cancelled or fails. `UiState::close_tab` (`windows::TabClose`: Ask, Save, AfterSaveAs) keeps
where it is; `ask_close_tab` starts it for the tab strip, the menu and `dialog.unsaved`. Alt+close
still drops the changes without asking. The three toasts are gone from the code and the catalogs.

Reordering tabs by dragging, the issue's other half, already works on main (landed 2026-10-19,
`dragging_a_tab_along_the_bar_reorders_it_without_detaching`).

Tests: `titlebar_tests::closing_a_tab_with_unsaved_changes_asks` (the X asks, Escape keeps the tab,
Don't Save closes it, Alt+click closes without asking, File ▸ Close tab asks),
`titlebar_tests::save_in_the_tab_question_saves_then_closes` (Enter saves then closes; no path:
the tab stays). The title bar test harness can hold modifier keys. Docs: ui-parity.md, ROADMAP.md.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LvG6E2LxvJ6MuFmiLA6Zqm
2026-11-06 12:39:39 +01:00
ashokram-si 30a1db7363 Merge remote-tracking branch 'origin/main' into feat/side-buttons-pan-1758
# Conflicts:
#	contributors/people.toml
#	docs/ui-parity.md
2026-11-06 09:44:15 +05:30
Trevor BrownandClaude Fable 5.1 a3e96bbb47 docs: ui-parity status line dated 2026-11-05 with its history row
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-11-05 17:06:55 -05:00
Trevor BrownandClaude Fable 5.1 25cc0eb643 Merge upstream/main into fix/place-crosshair
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-11-05 16:45:02 -05:00
Trevor BrownandClaude Fable 5.1 cd1409e089 Merge upstream/main into fix/control-arrows-pan
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-11-05 16:41:41 -05:00