From 5b7969901c816dbf54db68d53ee2be7cc1f614f7 Mon Sep 17 00:00:00 2001 From: Brandon Thomas Date: Sun, 4 Oct 2026 01:34:47 -0400 Subject: [PATCH] T: right-to-left carets and selections; Binding: Right to Left Co-Authored-By: Claude Opus 5.5 --- ROADMAP.md | 2 +- crates/compose/src/lib.rs | 63 +++++++++++++++++++++++++++++---- crates/compose/src/tests.rs | 28 +++++++++++++++ crates/doc/src/build.rs | 22 +++++++----- crates/doc/src/lib.rs | 4 +++ crates/doc/src/page.rs | 24 ++++++++++--- crates/engine/src/cmd/layout.rs | 33 +++++++++++++++-- crates/engine/src/cmd/text.rs | 53 ++++++++++++++++++++------- crates/idml/src/export.rs | 2 +- crates/idml/src/import.rs | 3 ++ crates/ui-egui/src/canvas.rs | 50 ++++++++++++++------------ crates/ui-egui/src/dialogs.rs | 17 +++++++-- docs/parity.md | 4 +-- 13 files changed, 244 insertions(+), 61 deletions(-) diff --git a/ROADMAP.md b/ROADMAP.md index 250bf40..eeb7ea0 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -96,7 +96,7 @@ DesignCraft aims at full Adobe InDesign parity — and to be better: faster, ope - Split Window / New Window (`window.split`, `window.newWindow`, Window ▸ Arrange): two side-by-side views of the document with their own zoom, scroll and render cache. New Window puts the second view in its own OS window (an egui viewport; a floating window on the web). - Transparency flattener (`file.exportPdf {flatten: high|medium|low|ppi}`, Edit ▸ Transparency Flattener Presets): each object involving transparency becomes an opaque image of its area over what's beneath it, so everything else stays vector (spreads with transparent parent items are rasterised whole). - Video and sound (place .mp4/.mov/.webm/.mp3/.wav…, `media.options/get`, Media panel): media frames show a poster or placeholder on screen, in print and in PDF, and export as HTML5 `