Brandon Thomas and Claude Opus 5.5
82d6def80b
Never crash: render and pdf
...
Rasters stay below vello_cpu's u16 limits (a 65535-pixel-wide render
panicked inside it), page renders larger than 2^29 pixels decline instead of
allocating, PNG encoding never panics, and the PDF heading tag can't fail.
Both crates deny the panicking lints.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-04 12:43:33 -04:00
Brandon Thomas and Claude Opus 5.5
8490965e71
CI: fix new Rust 1.99 clippy lints (as_chunks, ?, redundant ref)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-04 11:37:09 -04:00
Brandon Thomas and Claude Opus 5.5
558e798dfc
E: CMYK transparency blend space on screen
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-04 02:09:26 -04:00
Brandon Thomas and Claude Opus 5.5
b13135472a
V: Rotate Spread per spread — canvas layout through per-spread transforms
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-04 00:25:16 -04:00
Brandon Thomas and Claude Opus 5.5
7b636fb9f5
C: separations from source colours
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-03 23:54:54 -04:00
Brandon Thomas and Claude Opus 5.5
dc2114be26
I: PDF form fields — text, check box, combo, list, signature
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-03 10:48:58 -04:00
Brandon Thomas and Claude Opus 5.5
55af964ea8
X: inline XML tagging and tag markers
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-03 10:48:58 -04:00
Brandon Thomas and Claude Opus 5.5
9ecd3fb9fd
E: Inner Glow, Bevel and Emboss, Satin; soft effects kept in PDF export
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-03 08:50:43 -04:00
Brandon Thomas and Claude Opus 5.5
37f0cd99e1
P: Object Layer Options for placed PDFs
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-03 08:38:23 -04:00
Brandon Thomas and Claude Opus 5.5
77fc006b02
T: vertical type — Vertical Type tool, upright CJK, CJK line breaking
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-03 08:18:14 -04:00
Brandon Thomas and Claude Opus 5.5
fb747c5fa5
C: Color Settings, Proof Setup and Proof Colors
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-03 07:44:40 -04:00
Brandon Thomas and Claude Opus 5.5
839887eb04
I: video and sound — media frames, posters, EPUB players (+ Media panel)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-03 05:20:35 -04:00
Brandon Thomas and Claude Opus 5.5
08495e45d0
T: graphic cells — images in table cells
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-03 04:30:47 -04:00
Brandon Thomas and Claude Opus 5.5
3fc38549d4
I: Object States — multi-state objects (+ panel)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-03 04:08:35 -04:00
Brandon Thomas and Claude Opus 5.5
a4e76ed620
T: Track Changes — marked insertions and deletions, accept/reject all
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-03 03:57:22 -04:00
Brandon Thomas and Claude Opus 5.5
adb054df46
V: Separations Preview and ink limit view
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-03 03:43:22 -04:00
Brandon Thomas and Claude Opus 5.5
ba95a6f900
F: stroke styles — stripes, wavy, hash drawn (screen + PDF); named custom styles (+ IDML)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-03 02:39:39 -04:00
Brandon Thomas and Claude Opus 5.5
10dd488e72
H: Image Import Options — crop placed PDFs to trim/bleed/art/media box
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-03 02:23:41 -04:00
Brandon Thomas and Claude Opus 5.5
2f54f0b53d
O: Frame Fitting Options — auto-fit on resize, align from, crop (+ dialog, IDML)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-03 00:14:47 -04:00
Brandon Thomas and Claude Opus 5.5
eb2e8d8b4f
C: Appearance of Black — output rich black, Overprint [Black] at 100%
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-02 23:51:51 -04:00
Brandon Thomas and Claude Opus 5.5
3b462285c5
T: editorial notes — anchored, flagged on screen, never printed; Notes panel
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-02 23:18:21 -04:00
Brandon Thomas and Claude Opus 5.5
af0d241190
T: conditional text — conditions, hide/show in layout and exports, panel, IDML
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-02 23:02:15 -04:00
Brandon Thomas and Claude Opus 5.5
98d8edf764
T: Composition highlights — keep and H&J violations, custom tracking/kerning
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-02 22:35:23 -04:00
Brandon Thomas and Claude Opus 5.5
3609862c2e
C: Attributes panel — overprint fill/stroke/gap, nonprinting
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-02 22:18:30 -04:00
Brandon Thomas and Claude Opus 5.5
cd72171859
O: Script Label, alt text, isolate/knockout groups, sort table rows
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-02 21:27:26 -04:00
Brandon Thomas and Claude Opus 5.5
175aaf28fd
H: place a chosen PDF page (Image Import Options)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-02 20:57:38 -04:00
Brandon Thomas and Claude Opus 5.5
b10a06f7b8
V: Overprint Preview
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-02 20:36:07 -04:00
Brandon Thomas and Claude Opus 5.5
eb4fa9c64c
T: Type on a Path — tool, options, screen and PDF
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-02 20:34:20 -04:00
Brandon Thomas and Claude Opus 5.5
bfe4220840
C: Appearance of Black on screen (rich black / accurate)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-02 16:59:19 -04:00
Brandon Thomas and Claude Opus 5.5
20ef6c2c4e
T: Glyphs panel — font grid rendered in-house, search, click to insert, recently used
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-02 16:16:49 -04:00
Brandon Thomas and Claude Opus 5.5
5971553d60
H: place SVG (vector PDF export), PSD, BMP, AI — designcraft-images crate
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-02 10:51:48 -04:00
Brandon Thomas and Claude Opus 5.5
c0f8679ba5
V: Display Performance — Fast, Typical, High Quality display
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-02 10:34:40 -04:00
Brandon Thomas and Claude Opus 5.5
66ab252044
F: Gradient Swatch tool, Gradient panel, unnamed gradients (object.gradient)
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-02 10:15:01 -04:00
Brandon Thomas and Claude Opus 5.5
97b305fdcd
F: Stroke panel — arrowheads (screen and PDF), cap/join/miter, gap colour
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-02 09:56:14 -04:00
Brandon Thomas and Claude Opus 5.5
da0e87b86b
H: place PDF — sized by crop box, hayro on screen, vector form XObjects in PDF export
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-02 09:11:04 -04:00
Brandon Thomas and Claude Opus 5.5
87727f279a
D: Paste Into, Polygon Settings
...
- Edit › Paste Into (⌥⌘V): copied objects (with their stories and images) become the selected
frame's content, clipped by it; Item::is_group / has_nested_items; renderer and PDF draw fill,
clipped content, stroke; IDML nests the items inside the frame both ways (verified in
InDesign 2026) (+ tests)
- Polygon Settings: sides and star inset as engine preferences used by the polygon tools and
frame.create; double-click the Polygon tool (+ test)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-02 08:24:48 -04:00
Brandon Thomas and Claude Opus 5.5
ded7c7ad04
M9: damage-region repaint — re-render only changed frames and patch the canvas texture
...
- render: damage()/damage_with() — changed items and only the frames whose composition changed
(cache keeps the composition each edit replaced; Cache::composed_for matches a document
version exactly); conservative full repaint for styles, swatches, layers, parents, wrap,
effects and cross-story text (+ tests incl. pixel-identical patch vs full render)
- UI: canvas patches its texture after edits with the view unchanged (0.6 ms vs 22 ms on the
sample when typing); perf harness row for the damage repaint
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-02 00:54:31 -04:00
Brandon Thomas and Claude Opus 5.5
69563933be
M2: Find/Replace Font and missing-font highlighting
...
- engine: font.list (fonts used, missing first), font.replace (text, cells, footnotes, styles) (+ test)
- compose: RunStyle.missing_font (memoized per composition); render: pink highlight behind such
text when RenderOptions.highlight_missing_fonts (canvas only, never output) (+ test)
- UI: Type › Find/Replace Font… dialog
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-02 00:47:12 -04:00
Brandon Thomas and Claude Opus 5.5
7a7d7b78a1
Merge main into M8 tables
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-01 12:47:48 -04:00
Brandon Thomas and Claude Opus 5.5
77a23151ba
M8: tables
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-01 12:44:45 -04:00
Brandon Thomas and Claude Opus 5.5
b62a795602
M9: render perf (glyph path cache, culling) + soft drop shadow/feather/glow; perf harness
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-01 12:31:01 -04:00
Brandon Thomas and Claude Opus 5.5
91ae2b3cc9
M0: engine, tools, egui UI, desktop app, CLI, sample document, docs
...
Engine with command registry (~100 commands), tool hosting with one-step
undo per gesture, InDesign-style egui frontend (app bar, Control panel,
Tools panel, rulers, guides, frame edges, ports/threads, Properties/Pages/
Layers dock, panels, dialogs), JSON control channel, headless CLI renderer,
generated sample magazine, README/AGENTS/ROADMAP/ASSETS.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-01 10:39:15 -04:00
Brandon Thomas
c9dcad1f6e
continued work
2026-10-01 09:36:32 -04:00