Hakan Seven
feb110404c
fix(ui): correct supporter data and labels
2026-08-03 22:08:22 +03:00
Hakan Seven
9e90e50662
feat(io): add user-approved recovery
2026-08-03 12:47:48 +03:00
Hakan Seven
d06a1022f2
fix(input): handle @/# coordinate modes
2026-08-02 23:32:54 +03:00
Hakan Seven
3e6693b93f
feat(locale): localize full interface
2026-08-02 22:09:25 +03:00
Hakan Seven
b90b3e3ecf
feat(locale): add Fluent translations
...
Default to the platform language with persisted overrides across native and web builds.
Refs #630
2026-08-02 18:53:38 +03:00
Hakan Seven
e03e091b3c
feat(annotation): integrate object contexts
2026-08-02 12:00:15 +03:00
Hakan Seven
796d7d91d0
fix(ui): auto-size modal dialogs
...
Measure dialog content before fill layout so fields stay visible.\nKeep the MText preview width tied to its toolbar width.\n\nRefs #608
2026-08-01 18:24:05 +03:00
Hakan Seven
9382a412df
fix(viewport): adapt layout crosshair contrast
...
Choose the sheet or desk surface under the cursor instead of the active input space so MSPACE stays visible on light paper.\n\nRefs #611
2026-07-31 23:47:41 +03:00
Hakan Seven
a66940a3f0
feat(grip): support multi-grip editing
...
Refs #606
2026-07-31 22:05:30 +03:00
Hakan Seven
325beaea44
fix(mtext): sync wrap width ruler
2026-07-31 14:18:11 +03:00
Hakan Seven
7285e3de51
fix(viewport): improve cursor and paper contrast
...
Derive crosshair color from drawing background instead of UI theme.
Use RGB 138 for Paper Space desk background.
Refs #594
2026-07-31 10:19:02 +03:00
Hakan Seven
c9aab122f0
feat(find): add find and replace
...
Closes #583
2026-07-30 17:56:54 +03:00
Hakan Seven
4af141ebec
fix(start): unify action button shape
...
Closes #584
2026-07-30 17:06:30 +03:00
Hakan Seven
5116369dec
refactor(ui): adopt iced layout widgets
2026-07-30 15:40:51 +03:00
Hakan Seven
c9c3d3b1bf
refactor(ui): adopt iced color picker
...
Remove local Pin/PickList wrappers and the ACI grid.\nBlock viewport input behind the picker and load iced_aw glyphs.
2026-07-30 15:19:58 +03:00
Hakan Seven
3ab8dc3ca5
fix(ui): make modal layouts intrinsic
...
Pin Iced 0.15 so dialogs can measure content before distributing the resolved frame across child panels. Keep the web plugin notice compact and non-resizable.\n\nCloses #582
2026-07-30 14:47:28 +03:00
Hakan Seven
2688ffbd6b
fix(ui): filter scales by drawing units
...
Refs #578
2026-07-30 11:13:04 +03:00
Hakan Seven
4310405ce3
fix(start): reserve command line space
...
Closes #546
2026-07-29 23:35:46 +03:00
Hakan Seven
8cd1b05987
fix(web): hide native tab actions
...
Closes #547
2026-07-29 23:31:12 +03:00
Hakan Seven
fd8b206515
feat(start): add OpenAEC sponsor
2026-07-29 21:38:19 +03:00
Hakan Seven
6ecd67ff6e
feat(layer-state): add saved-state editor
2026-07-29 18:39:55 +03:00
Hakan Seven
1e624cc6b7
feat(layers): add native state manager
...
Replace session-only layer snapshots with drawing-backed DWG and DXF states, exposed through the ribbon and LAYERSTATE commands.\n\nCloses #562
2026-07-29 18:00:41 +03:00
Hakan Seven
cd1378e6b2
fix(viewport): preserve tiled pane controls
2026-07-29 17:21:57 +03:00
Hakan Seven
fcc6e1f8e1
fix(web): link plugins to desktop app
...
Keep browser entry points visible while explaining that native
plugins require a desktop install.
Refs #567
2026-07-29 16:28:20 +03:00
Hakan Seven
2424eeb74d
fix(web): hide unsupported plugin manager
...
Fixes #567
2026-07-29 16:17:17 +03:00
Hakan Seven
6686141d3b
feat(hatch): add visual pattern picker
...
Closes #566
2026-07-29 15:46:53 +03:00
Hakan Seven
4e25e88c31
feat(plugins): redesign plugin manager
2026-07-29 14:27:32 +03:00
Hakan Seven
969a7605b7
feat(web): show recent thumbnails
...
Cache previews in OPFS and migrate existing recent entries by reading only their embedded DWG preview data.
2026-07-29 01:09:13 +03:00
Hakan Seven
d77eb8f419
fix(block): open nested editor tabs
...
Closes #538
2026-07-28 19:13:27 +03:00
Hakan Seven
05b044f367
perf(scene): make geometry edits incremental
...
Avoid full document, cache, and GPU rebuilds for entity deltas so add, delete, history, selection, and live polyline edits stay responsive on large drawings.
2026-07-28 17:16:27 +03:00
Hakan Seven
a30f72f627
fix(start): refine responsive page layout
2026-07-28 12:48:39 +03:00
Hakan Seven
2ac61bf99a
fix(ui): theme remaining interface text
2026-07-28 12:29:31 +03:00
Hakan Seven
28d8246c68
feat(ui): add discussions and semantic theming
...
Generate web discussion snapshots in CI; native builds use the public
feed and an offline cache.
2026-07-28 11:49:45 +03:00
Hakan Seven
4bf14baea4
feat(ui): add configurable Iced themes
2026-07-28 09:33:12 +03:00
Hakan Seven
73545520c8
refactor(tabs): use context menu widget
2026-07-28 01:34:45 +03:00
Hakan Seven
ce1091cea5
refactor(ui): use pin for anchored overlays
2026-07-28 01:25:39 +03:00
Hakan Seven
b9de8940bc
refactor(statusbar): unify popup menus
2026-07-28 01:02:00 +03:00
Hakan Seven
7f41e1666f
feat(options): set default save format
...
Avoid false data-loss warnings when preserving the source format.\n\nCloses #529
2026-07-27 22:37:47 +03:00
Hakan Seven
c21f3e1a19
feat(tabs): add drag-and-drop reordering
...
Closes #526
2026-07-27 22:14:58 +03:00
Hakan Seven
dce2533767
fix(start): collapse panels by available space
...
Collapse Tutorials, Supporters, then Recent Documents as the panels stop
fitting.
Refs #519
2026-07-27 17:57:46 +03:00
Hakan Seven
4a30928f5a
fix(ui): refine empty drawing state
...
Show drawing defaults when nothing is selected and disable layout controls on Start.
Refs #514
Refs #515
2026-07-27 17:37:17 +03:00
Hakan Seven
8018ab1523
feat(view): implement LIMITS command
...
Closes #478
2026-07-27 16:15:28 +03:00
Hakan Seven
2acc4f7978
fix(io): guard concurrent drawing saves
...
Hold edit leases and compare disk fingerprints before replacement so another editor cannot be silently overwritten.
Offer retry, reload, Save As, or explicit overwrite recovery.
Closes #498
2026-07-27 13:18:31 +03:00
Hakan Seven
9d973a0fd6
feat(ui): add drawing tab context menu
...
Refs #493
2026-07-27 13:18:31 +03:00
Hakan Seven
7f1a1ff57b
fix(viewport): stabilize grid and grip clipping
...
Keep the grid on UCS XY, derive spacing from zoom, and clip perspective lines by screen density without dropping the near side.
2026-07-27 11:36:07 +03:00
Hakan Seven
12bf126646
perf: remove large drawing stalls
...
Keep resident geometry and GPU resources stable across edits, MSPACE zoom, and Model/Paper switches. Add unified PERF output for tracing remaining costs.
2026-07-25 13:34:48 +03:00
Hakan Seven
a413f75548
fix(snap): preserve OTRACK precision
...
Keep tracking geometry in f64 until screen projection so typed and dynamic distances no longer expose f32 drift.\n\nCloses #439
2026-07-24 17:56:06 +03:00
Hakan Seven
658aa4a4a5
fix(start): complete Start page workflow
...
Track Save As paths, persist the selected section, and size tabbed
panels from their actual available width.
Refs #443
2026-07-24 17:44:07 +03:00
Hakan Seven and Claude Fable 5
5f08b77ebc
feat(web): copy/paste in text fields via the browser clipboard ( #346 )
...
iced's clipboard rides window_clipboard, which has no wasm backend — a
focused text_input captured Ctrl+C/V on the web and did nothing.
Ctrl+V (captured, wasm only): read the async browser clipboard (the
keypress is a user gesture, so it's permitted) and replay the text as
synthetic KeyboardEvents on the winit canvas — the only route into a
focused text_input, since iced exposes no insert-text operation.
Control characters are dropped and the length is capped. The MText and
inline-TEXT editors keep their dedicated paste paths (no double feed),
and an unfocused Ctrl+V still runs PASTECLIP.
Ctrl+C (captured, wasm only): a widget operation pairs each text_input
with its focus state (iced fires both callbacks back-to-back on the
same widget) to collect the focused field's visible text, then writes
it with navigator.clipboard.writeText. Whole-field text, not the
selection — iced doesn't expose the selected range.
Native behaviour is unchanged.
Closes #346
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-22 12:47:19 +03:00
Hakan Seven and Claude Fable 5
dd40e1f632
feat(snap): Shift+RMB one-shot snap override menu ( #337 )
...
Shift+right-click in the viewport opens a cursor-anchored grid of snap
icons (names as hover tooltips). Picking one engages a one-shot
override: only that snap applies — even with running osnap off — until
the next point pick commits, which restores the saved configuration.
Esc drops an unconsumed override; an outside click closes the menu.
The status-bar snap toggles are untouched — this is a separate,
temporary mechanism.
Covers items 1 and 2 of #337 (mid-between-two-points still pending).
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-07-22 12:27:27 +03:00