Commit Graph
2582 Commits
Author SHA1 Message Date
skylar taylor-barrick bc840130a4 Satisfy clippy's nonminimal_bool on rustc 1.96
Four sites already on main that `cargo xtask ci` cannot get past with the
current toolchain; each rewrite is the one clippy suggests and changes no
behaviour. `!x.is_some_and(f)` becomes `x.is_none_or(!f)`, and pdf_bounds
folds `!(a && b) || !c` into `!(a && b && c)` by De Morgan.

Unrelated to the merge they are committed beside; separated so that merge
stays a merge.
2026-10-16 20:20:36 -06:00
skylar taylor-barrick 0d541deab7 Merge upstream/main into codex/fix-relink-eps
Resolve 12 conflicted files. Where both sides changed the same code:

- format: keep main's bounded-read load_zip (MAX_ENTRIES, read_entry) and
  this branch's u64 version reporting, so a version above u32::MAX is named
  as written rather than clamped. Both sides had fixed the same truncation.
- render: main's natural_size supersedes image_natural_size (it already
  reads an EPS bounding box and also handles PDF pages); callers in table
  and data merge now use it.
- images: keep the DSC-aware header scan and (atend) trailer lookup, take
  main's classic-Mac line endings, and carry its overflow guard into
  parse_box. eps_proxy draws main's simple rectangles before falling back
  to the placeholder, still over a retained EPS source.
- engine/file: take main's placement shape (add_asset, crop box geometry,
  place cursor, finite_rect, object effects) and keep this branch's
  validate_placement in both branches; edit() works on a clone and commits
  only on Ok, so validating inside it stays all-or-nothing.
- engine/links: keep building the replacement before edit() so a file that
  cannot be read leaves the document untouched, and move main's crop_pdf
  refresh into relinked_asset, which both relink and update go through.
- engine/export: EPS preview warnings join the font-embedding warnings
  rather than shadowing them.
- idml: an EPS element keeps ActualPpi (its pixels are a preview raster);
  main's PDF exclusion is unchanged.

Cargo.lock regenerated. Tests and doc strings from both sides kept.
2026-10-16 19:57:08 -06:00
aiongg c2609f921b Merge pull request #1139 from aiongg/next
Integration batch: 197 PRs on main
2026-10-16 10:08:19 -04:00
aiongg 8e18800280 Integration: #1075 and #1077 progress log lines 2026-10-16 12:43:06 +00:00
aiongg 3294c4a9bb Merge #1077 update 2026-10-16 12:42:33 +00:00
aiongg f90c0de884 Merge #1075 update 2026-10-16 12:42:32 +00:00
aiongg 95337b96f3 Merge #305 update 2026-10-16 12:42:08 +00:00
Hamza cf5b54e72c Record the Greek language in the work list
gaps.md's header asks for a ROADMAP progress-log line and a timestamp when a gap
is closed or shrunk. Gap 13 was shrunk in the first commit (four hyphenating
languages became five); this adds the two it was missing.

Docs only; the fix itself is unchanged.
2026-10-16 16:06:36 +05:00
Hamza b5cc353c6d Close gap 27 in the work list
gaps.md asks for it in its own header: "When you close a gap, delete its entry
(or shrink it), add a line to the ROADMAP progress log and update the
timestamps." The entry was still listed, which is how a second contributor picks
up work that is already done.

Docs only; the fix itself is unchanged.
2026-10-16 16:06:09 +05:00
aiongg 852db92b05 Merge branch 'fix-macwin' into next-integ 2026-10-16 06:40:54 +00:00
aiongg f309b08562 Integration: #1036 test that a selected group paints both ports of its text frame 2026-10-16 06:40:28 +00:00
aiongg e99783c756 Integration: "&" shows in native menu labels 2026-10-16 06:40:28 +00:00
sanyamsingh001andCodex 745712fa7d Merge tested main a930276fd7 into PR #305
Preserve the reviewed PR behavior and tested upstream base.

Co-Authored-By: Codex <codex@openai.com>
2026-10-16 16:36:49 +10:00
aiongg 98be512f79 Merge branch 'fix-panelmenu' into next-integ 2026-10-16 06:27:33 +00:00
aiongg debcc641c3 Merge branch 'fix-esc' into next-integ 2026-10-16 06:27:33 +00:00
aiongg 11810ecbfc Integration: panel menus stay reachable in the docking layout 2026-10-16 06:27:17 +00:00
aiongg a9e2229cd6 Integration: Esc that closes a dialog doesn't reach the canvas 2026-10-16 06:25:01 +00:00
aiongg 39fe594553 Integration: Window › Minimize (⌘M) on macOS 2026-10-16 06:16:17 +00:00
aiongg 199bfcfacb Merge PR #826 new head 2da46a8a3 (main merges only; content already in) 2026-10-16 05:07:29 +00:00
aiongg 402935d359 Merge PR #763 new head 7242c4508 (main merges only; content already in) 2026-10-16 05:07:29 +00:00
aiongg 3921158a12 Merge PR #753 new head 78997e391 (main merges only; content already in) 2026-10-16 05:07:29 +00:00
aiongg 31d7e8f5ac Merge PR #699 new head b3fb92a97 (main merges only; content already in) 2026-10-16 05:07:28 +00:00
aiongg a00b77e06a Merge PR #689 new head 8ca022a11 (main merges only; content already in) 2026-10-16 05:07:28 +00:00
aiongg c98202bb7c Merge PR #643 new head c8cbe0a0d (main merges only; content already in) 2026-10-16 05:07:28 +00:00
aiongg e09d2667ad Merge PR #490 new head a8cb7de59 (main merges only; content already in) 2026-10-16 05:07:28 +00:00
aiongg 3018115fb1 Merge PR #456 new head b20a94aa6 (main merges only; content already in) 2026-10-16 05:07:28 +00:00
aiongg f72644ad3c Merge PR #454 new head 0ca435b17 (main merges only; content already in) 2026-10-16 05:07:27 +00:00
aiongg 528eab7aae Merge PR #358 new head a52102668 (main merges only; content already in) 2026-10-16 05:07:27 +00:00
aiongg 33f208f40f Merge PR #319 new head eb8263259 (main merges only; content already in) 2026-10-16 05:07:27 +00:00
aiongg 6753887e86 Merge PR #253 new head 6f127f9a4 (main merges only; content already in) 2026-10-16 05:07:27 +00:00
aiongg d6307cf399 Merge PR #121 new head b6a569cb0 (main merges only; content already in) 2026-10-16 05:07:27 +00:00
aiongg 3ce41169e3 Merge PR #803 new head 30e1b7626 (main merges only; content already in) 2026-10-16 05:06:37 +00:00
aiongg 78bf14afb4 Merge branch 'fix-1067' into next-integ 2026-10-16 05:02:21 +00:00
aiongg 763c4fac08 Integration: #1067 large parent icons in a short Pages panel don't crash 2026-10-16 05:01:19 +00:00
aiongg 8f93a48c4d Integration: #1067 Panel Options' parent Show Thumbnails and size drive the parents' rendered thumbnails 2026-10-16 04:56:38 +00:00
aiongg dbf495bee9 Merge PR #1066 and #1067: Pages panel scroll areas, divider and Panel Options
- panels/pages.rs: #635's parent rows (rendered thumbnails, parents by id, the shown parent selected, double-click shows that parent) sit in #1066's parents scroll area, vertical and side by side; Panel Options' parent size sets the parent icon height (Extra Small: blank pages); thumbnail key = (uid, revision, page or parent, height); pages use ThumbOf::Page; #869/#870/#1058 kept (canvas refit after leaving parents, Delete Page/Spread through the delete-pages question, applyParent by id); #1067's narrow-spread label kept; tests: both sides.
- dock.rs: #343's floating-window frame kept, its body goes through scrolled_body so a floating Pages panel keeps its footer.
- dialogs.rs: deletePages, newWorkspace (#1058 and ours) and pagesPanelOptions arms side by side; HEAD's dialog widths plus pagesPanelOptions at 380.
- lib.rs: skip_delete_pages_warning and pages_parents_height/pages_panel both kept.
- i18n.rs, i18n/{ar,de,it,ja,ka,pt_br,uk}.rs: both sides' rows, no duplicate keys.
- ROADMAP.md: the two new lines in the log's style; dropped four 2026-10-14 lines the union merge duplicated.
2026-10-16 04:56:09 +00:00
aiongg 5d4834e537 Integration: #1036 the overset mark sits at the frame's real out port
The always-on mark uses thread::port_center, the position draw_ports and the Selection tool
use, so rotated and short frames get it on their right edge. Frames whose ports the selection
draws get no second mark. text_frames_in and overset_frames drop the unused transforms.
2026-10-16 04:53:37 +00:00
aiongg bc5799c046 Merge PR #1036: Overset marks for text frames inside groups
ROADMAP.md: the union merge re-added 13 log lines already present; kept one copy each. The PR's overset line moved into date order and took the group-ports clause; its other two lines describe work from other PRs and were dropped.
docs/ui-parity.md: merged cleanly next to #1033's row.
2026-10-16 04:51:29 +00:00
aiongg 06c7ff6117 Integration: progress log deduplicated and in date order 2026-10-16 04:49:30 +00:00
aiongg 21a6e6d90f Merge branch 'batch-tB' into next-integ
# Conflicts:
#	docs/gaps.md
2026-10-16 04:48:56 +00:00
aiongg 833db788af Merge branch 'batch-tA' into next-integ 2026-10-16 04:48:48 +00:00
aiongg 45178f283a Merge branch 'batch-tC' into next-integ 2026-10-16 04:48:45 +00:00
aiongg 699b5da7dc Integration: #1076 the release that ends a hold opening a tool flyout doesn't pick the tool and close it 2026-10-16 04:37:18 +00:00
aiongg eb2b2f1b5f Integration: #1043, #1059, #1074 French strings now in the shared table leave the French catalog 2026-10-16 04:37:17 +00:00
aiongg 51f790a092 Integration: #1059 canvas menu tests match rows in the canvas, not the Properties panel's Arrange button 2026-10-16 04:35:52 +00:00
aiongg 635615fd71 Integration: #1075 closes gap 27
Gap 27 leaves docs/gaps.md (revision history row added) and ROADMAP gets its progress-log line.
2026-10-16 04:33:22 +00:00
aiongg 7e539fee8d Integration: #1002 Cmd borrows the last-used selection tool
Holding Cmd/Ctrl with a non-selection tool borrows whichever of Selection and Direct Selection was chosen last, instead of a fixed tool per tool family. The session records the last chosen selection tool; the busy() guard stays.
2026-10-16 04:33:07 +00:00
aiongg 25aa75a6e5 Integration: renaming a character style updates the drop cap style once 2026-10-16 04:29:27 +00:00
aiongg bd99e59e81 Integration: data merge checks the read roots before the file size 2026-10-16 04:29:27 +00:00
aiongg 1014d841ac Integration: a dropped file without an extension is recognised from its first bytes 2026-10-16 04:29:27 +00:00