Commit Graph
4115 Commits
Author SHA1 Message Date
makesomethingshit 4f45a0127a #1620: Resize selected parent pages from page controls 2026-10-23 20:58:19 +09:00
moppeeer 19ba40b31a Merge remote-tracking branch 'origin/main' into indesign-default-swatches 2026-10-23 12:42:33 +02:00
moppeeer 5a07446487 Merge remote-tracking branch 'origin/main' into effect-blend-modes 2026-10-23 12:42:04 +02:00
moppeeer 6be1c70716 Merge remote-tracking branch 'origin/main' into insert-pages-dialog 2026-10-23 12:40:53 +02:00
Marco Arnulfo 5539e28647 Layout: Go Back after Presentation returns to the last spread presented
Presentation's spreads now count as one jump in the window's history, and
leaving it as a jump back to the view it was entered from, at the place the
view was. Before, the history stayed on the last presented spread while the
view was put back, so Go Back couldn't reach it.

docs/gaps.md: Go Back and Go Forward are two of the missing menu items, 149.
2026-10-23 11:26:32 +02:00
Marco Arnulfo 0160b7af07 Convert to Text (all instances): a caret in a table cell or a footnote keeps its place after the converted value; gaps: 150 missing menu items 2026-10-23 10:56:22 +02:00
aiongg 96648c382c Merge branch 'print-color' into print-color-separations 2026-10-23 08:35:36 +00:00
aiongg 530e568c9e Print color: an overprinting process gradient is DeviceN of its inks 2026-10-23 08:35:30 +00:00
aiongg 0409bbf9aa Merge branch 'print-color' into print-color-x1a
# Conflicts:
#	Cargo.lock
#	Cargo.toml
#	xtask/src/pdf_deps.rs
2026-10-23 08:16:07 +00:00
aiongg 3dbbcf2d07 Merge branch 'print-color' into print-color-separations
# Conflicts:
#	Cargo.lock
#	Cargo.toml
#	crates/engine/src/cmd/export.rs
#	crates/ui-egui/src/lib.rs
2026-10-23 05:52:56 +00:00
aiongg 7ac286e6d2 Merge branch 'keymap-adoption' into keymap-shortcuts-dialog
# Conflicts:
#	Cargo.toml
#	apps/designcraft/src/native_menu.rs
#	crates/ui-egui/src/i18n.rs
2026-10-23 05:41:18 +00:00
aiongg a30b71cd36 Merge remote-tracking branch 'upstream/main' into print-color
# Conflicts:
#	Cargo.lock
#	Cargo.toml
#	xtask/src/pdf_deps.rs
2026-10-23 05:40:13 +00:00
aiongg 3c38c84438 Merge remote-tracking branch 'upstream/main' into keymap-adoption
# Conflicts:
#	Cargo.toml
#	crates/ui-egui/src/menus.rs
#	crates/ui-egui/src/shortcut_import.rs
#	docs/target-app-parity.md
#	docs/ui-parity.md
2026-10-23 05:10:57 +00:00
aiongg bc1ccfa481 Merge remote-tracking branch 'upstream/main' into docking-trial
# Conflicts:
#	Cargo.toml
#	crates/ui-egui/src/i18n/fr.rs
2026-10-23 05:07:00 +00:00
Marco Arnulfo 3cd235ee5c Type › Text Variables › Convert Variable to Text: the selected instances, or every instance of one variable, become the text they show on their page 2026-10-23 03:40:11 +02:00
Marco Arnulfo 86356d15be Layout: Go Back and Go Forward through the pages viewed, with InDesign's shortcuts 2026-10-23 03:19:47 +02:00
aiongg 3ee11391ae CI: one integration-test binary per crate 2026-10-23 01:17:48 +00:00
skylar taylor-barrick d9477695e2 #249: test that menu rows are selectable across their full width
A menu row only reacted over its text because the column used a plain top-down layout. The test renders a menu column with a short Preferences row and clicks near the right end of the row, expecting the dialog to open. Without the justified layout the click misses and the test fails.
2026-10-22 17:57:36 -06:00
skylar taylor-barrick fecf5906c3 #248: test that the start screen offers every print preset including A6
The start screen showed only the first ten presets and had no A6 sheet. The test checks that the start screen paints a card for each print preset, that A6 exists at 105 x 148 mm, and that the Properties page-size list agrees. Without the fix it fails because the B5 card is cut off by take(10) and there is no A6.
2026-10-22 17:57:36 -06:00
skylar taylor-barrick 15e4fdd124 #329: test that the Help menu works on the start screen
The Help menu's links were greyed out when no document was open, because UI commands outside app. and window. needed a document. The test checks every help.* UI command is enabled with an empty session while another UI command (view.rulers) stays disabled. Without the help. exemption it fails on "help.discord must work from the start screen".
2026-10-22 17:57:36 -06:00
Marco Arnulfo 2caa39e130 Autoflow: fill the pages that follow before adding pages at the end
Autoflow (Shift-click, autoflow on Place, text.thread with autoflow) inserted
new pages right after the story's last frame, in front of the document's own
pages. As in InDesign, it now threads one frame per column on each page that
follows, whatever else the page holds, and only then adds pages at the end of
the document. It fills whole pages, so an estimate that stops inside a page
can't leave its later columns out of the thread. Frames it set past the end
of the text are removed again; the pages they were on stay. Smart Text Reflow
of the primary text frame keeps adding pages after the story's last page.

Shrinks gap 26: flowing into the primary text frame of the following pages
is left.
2026-10-22 23:28:22 +02:00
522040c949 i18n(ka): Relative Colorimetric is ფარდობითი კოლორიმეტრიული
The adjective from კოლორიმეტრია is კოლორიმეტრიული; ფარდობითი matches PhotoCraft
(storytold/photocraft#5845, from a review by supersfera-online).

Co-authored-by: supersfera <223132313+supersfera-online@users.noreply.github.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YMTAbGNRxnMEzRvYnQGphF
2026-10-22 23:36:04 +04:00
MarekSpodBiedry d292dd2acd IDML export: write the graphic placed in a table cell (#1551) 2026-10-22 21:06:54 +02:00
MarekSpodBiedry ce486fda63 Fix slice panics in the PDF post-passes on malformed page trees and metadata (#1591) 2026-10-22 21:05:48 +02:00
MarekSpodBiedry fd3d5087fc Cursors: paint the tool cursors in the window on Wayland, so they keep the system size (#1544) 2026-10-22 21:03:58 +02:00
MarekSpodBiedry 62c71d004a Align towards/away from spine on parent-page folios by page side (#1577) 2026-10-22 21:03:00 +02:00
NetterSilverandClaude Haiku 5.5 2ddcf6d2a1 Decode UTF-16 plain text files by BOM on import
Found while testing crates/textimport/src/lib.rs:117

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-22 20:08:56 +02:00
NetterSilverandClaude Haiku 5.5 bbb95930a2 Skip control words and symbols used as RTF \uN fallbacks
Found while testing crates/textimport/src/rtf.rs:197-243 (the \u handler at :235-242; control words never decrement `pending`)

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-22 19:26:49 +02:00
Davit MatchakhelidzeandClaude Opus 5.5 6c25107508 ui: the Discord button widens to fit its label instead of spilling out
The start screen's community card reserves the button's measured width, so
the line beside it wraps before the button. Georgian's label overflowed the
fixed 190 px.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01YMTAbGNRxnMEzRvYnQGphF
2026-10-22 21:23:52 +04:00
Hamza e6d78a71d0 A right-to-left paragraph's first-line indent is at its right edge (#1448)
The first-line indent was added to the left indent whatever the paragraph's
direction, so a right-to-left paragraph's first line moved the wrong way. With
the hanging indent a numbered list uses — right indent 10 mm, first line
−10 mm — the first line went 10 mm outside the frame on the left while the
wrapped lines sat where it should have been.

It is the paragraph's start-side indent, which is the right one in a
right-to-left paragraph; the drop-cap case beside it already made that
distinction.

Measured on a 200 pt column with that hanging indent:

  first line    right edge 200     (the frame's edge, as InDesign sets it)
  wrapped       right edge 171.65  (10 mm in)
  every line    left edge >= 0     (nothing outside the frame)

and the same paragraph left to right is unchanged, first line at 0 and wrapped
lines 10 mm in.

The test checks both directions; the right-to-left half fails without the
change. 359 composition tests pass unchanged.
2026-10-22 22:20:41 +05:00
PiMinusMaxandClaude Opus 5.5 d080a5635a Swatches panel: a gradient dropped on a colour group row is kept too
The drop zone held the ungrouped swatches only, so releasing the
gradient over a colour group's row did nothing.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 19:13:31 +02:00
moppeeerandClaude Opus 5.5 028e950f97 Paragraph Shading and Border pages laid out as InDesign's, with Overprint
Paragraph Style Options › Paragraph Shading and Paragraph Border are headed
with the page's name; Tint is a spinner with InDesign's presets and has
Overprint beside it (shading, border stroke and gap: new paragraph
attributes, read and written in IDML as ParagraphShadingOverprint,
ParagraphBorderOverprint and ParagraphBorderGapOverprint; PDF export warns
that it doesn't overprint yet, as for objects). Corner Size and Shape is
InDesign's two-by-two grid of corner icons, size spinners and shape menus
showing each shape's glyph, with the link in the middle; the offsets have
spinners, with the edges and width beside them; the weights have spinners.

Found in the Learn Skills Daily course, chapter 41.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 19:00:30 +02:00
moppeeer dc8c9535b9 Merge remote-tracking branch 'origin/main' into paragraph-shading-indesign 2026-10-22 19:00:29 +02:00
KnottyDyes bba31c17b6 PDF: report visible unembedded fonts in PDF/X-4 (#909)
Track text state through graphics saves and drawn forms; exempt invisible text. Report font names and pages in export warnings and validation without embedding or outlining placed fonts.
2026-10-22 10:31:21 -06:00
moppeeer 315630e1c8 Merge remote-tracking branch 'fork/corner-menu-icons' into paragraph-shading-indesign
# Conflicts:
#	ROADMAP.md
2026-10-22 18:21:47 +02:00
moppeeer c97bdb9316 Merge branch 'hyphenation-settings' into paragraph-panel-indesign 2026-10-22 17:32:39 +02:00
moppeeer 883bcddac1 Merge branch 'control-panel-lists-shading' into paragraph-panel-indesign 2026-10-22 17:32:39 +02:00
moppeeer daad84ac69 Merge branch 'list-buttons-hanging-indent' into control-panel-lists-shading 2026-10-22 17:30:19 +02:00
moppeeerandClaude Opus 5.5 b3896d8122 List buttons: track the hanging indent they set (listHang)
A paragraph attribute records that the Bulleted or Numbered List button set
the hanging indent; turning the list off takes the indent away only then
(and while it is still as applied), and clears the mark. A paragraph whose
own indents were 18/-18 before the list keeps them.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 17:30:14 +02:00
moppeeerandClaude Opus 5.5 dc973c5395 Preferences with no document: the default units are saved with the other preferences
Units & Increments for new documents go in the same prefs.set as the rest,
which checks everything before it changes anything, so a refused increment
keeps the dialog open with no preference saved.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 17:19:54 +02:00
moppeeerandClaude Opus 5.5 08b356cf44 Hyphenation Settings: a mixed checkbox turns on first; refused settings show why
A checkbox that differs across the selected paragraphs starts off, so the
first click turns it on for all (egui toggles the value under the
indeterminate look). Settings type.para refuses no longer count as
previewed: the paragraphs go back, the reason shows and they are not tried
again until they change; OK keeps the dialog open with the reason.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-22 17:15:22 +02:00
moppeeer 66fcf3ddce Merge branch 'control-panel-lists-shading' into paragraph-panel-indesign
# Conflicts:
#	ROADMAP.md
2026-10-22 17:01:04 +02:00
moppeeer c427640726 Merge remote-tracking branch 'origin/main' into control-panel-lists-shading
# Conflicts:
#	crates/ui-egui/src/i18n/fr.rs
2026-10-22 16:53:56 +02:00
moppeeer 6bd8fe7c4a Merge remote-tracking branch 'origin/main' into control-panel-text-modes
# Conflicts:
#	crates/ui-egui/src/i18n/fr.rs
2026-10-22 16:52:21 +02:00
moppeeer a320b8888a Merge remote-tracking branch 'origin/main' into properties-more-options
# Conflicts:
#	crates/ui-egui/src/i18n/fr.rs
2026-10-22 16:51:06 +02:00
moppeeer 79df355aad Merge remote-tracking branch 'origin/main' into global-units-preferences
# Conflicts:
#	ROADMAP.md
2026-10-22 16:43:16 +02:00
moppeeer 42d55734de Merge remote-tracking branch 'origin/main' into hyphenate-across-column
# Conflicts:
#	ROADMAP.md
2026-10-22 16:35:55 +02:00
moppeeer 127cbbc19c Merge remote-tracking branch 'origin/main' into hyphenation-french-italian
# Conflicts:
#	ROADMAP.md
2026-10-22 16:35:52 +02:00
moppeeer 7971b8e9bd Merge remote-tracking branch 'origin/main' into hyphenation-settings
# Conflicts:
#	ROADMAP.md
2026-10-22 16:35:50 +02:00
moppeeer 0efcdb34bf Merge remote-tracking branch 'origin/main' into codex/color-panel-defaults
# Conflicts:
#	crates/ui-egui/src/i18n.rs
2026-10-22 16:34:00 +02:00