Commit Graph
1834 Commits
Author SHA1 Message Date
aiongg 1b629d1299 Merge PR #4155: Tables: Convert to Text asks for the separator and converts only the selected rows 2026-10-25 02:21:10 +00:00
aiongg 435cf3dbd2 Merge PR #4162: Tables: Split Table fixes the vertical merges and row content controls it splits 2026-10-25 02:21:10 +00:00
aiongg 1c3a18c1b7 Merge PR #4225: Restrict Editing: Enter and typing at the start or end of an exception line go inside it 2026-10-25 02:21:09 +00:00
Dylan M. TaylorandClaude Sonnet 5.5 b4da59f0c3 security: require the data integrity check on encrypted DOCX packages (#4223)
An agile EncryptionInfo without dataIntegrity made decrypt skip the HMAC, so
altered ciphertext or an altered StreamSize came back as plaintext. The file
no longer decides whether it is authenticated: a package without dataIntegrity
is refused.

Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-24 21:10:15 -04:00
dotCooCoo 327cc595e4 Restrict Editing: Enter and typing at the start or end of an exception line go inside it
In a document that is read only or open to comments only, an exception
that starts a paragraph puts its start marker at the line start. Home,
Left, Right from the line above and Down into an empty line leave the
caret before that marker, outside the exception, so Enter and typing
there were refused. An editable line right after a protected line could
not be broken or typed into from its start. The same happened at the end
of a line that an exception ends, where End leaves the caret after the
end marker.

Typing now moves a caret right before the start of an exception the
author may edit to just inside it, and one right after its end back
inside it, as Document::typing_pos already does for the markers of a
block-level content control.
2026-10-24 17:20:56 -07:00
aiongg fc7bdcb9ec Merge pull request #4215 from aiongg/batch-heads
Merge the latest commits of #4100, #4133 and #4171
2026-10-24 19:36:17 -04:00
aiongg ef175c6e2f Merge PR #4133: #4085: toggle the last highlight colour with the keyboard shortcut 2026-10-24 22:35:22 +00:00
aiongg 235485108c Merge PR #4171: Picture memory limits for 6 audit issues: one decoder, TIFF strips, styles, Remove Background, Windows paste, render cache 2026-10-24 22:35:09 +00:00
aiongg 5f87444b4a Merge PR #4100: autoscroll: make the cursor follow the scroll direction 2026-10-24 22:35:09 +00:00
aiongg ab390cc27e Merge pull request #4194 from aiongg/martin-batch
Merge 27 open PRs (tested batch)
2026-10-24 18:33:13 -04:00
VoiceLessQ f761014c77 Merge origin/main 2026-10-24 21:08:38 -01:00
aiongg 4c8dc00fe6 Merge upstream/main (#4184 craft-libs bump) into the batch 2026-10-24 21:58:03 +00:00
aiongg 9942e2a3fb Charts and SmartArt: the default cursor over the body, which doesn't move (#3853) 2026-10-24 21:52:48 +00:00
aiongg ffa51443f2 Bump craft-print, craft-pdf, krilla and craft-i18n to craft-libs 1774443 (#4184)
* Bump craft-print, craft-pdf, krilla and craft-i18n to craft-libs 1774443

* PDF export writes link annotations only for safe targets (craft_pdf::write::uri_target)

* Chart default category and series names use fmt_plain, so RTL interfaces put no isolate marks into the document
2026-10-24 17:52:43 -04:00
aiongg b78c37bd7e Fonts: the web build embeds only craft-fonts' Georgian interface face, not the 4.7 MB Japanese one (#3888) 2026-10-24 21:51:00 +00:00
aiongg e23d5eb7f3 Tests: Undo moves past a step whose document is the one showing (#4004) 2026-10-24 21:50:45 +00:00
aiongg ba151faf62 Same content: a table's cells and the building blocks compare their blocks by address first, so an edit in a table cell doesn't compare the whole table (#4004) 2026-10-24 21:50:45 +00:00
aiongg 6f679e362f Web host bridge: a Save under a name the host page never sent (untitled, an imported .doc) is Save As (#3822) 2026-10-24 21:43:48 +00:00
aiongg 6622e21af6 Tests: no stale layout after a command that changes nothing (#4004); new comments and replies carry their UTC time (#4079) 2026-10-24 21:39:22 +00:00
aiongg 885b1cbd13 Lasso: a recolour or move that changes nothing keeps the lasso selection (#4004) 2026-10-24 21:31:35 +00:00
aiongg 49d3551ca6 DOCX: a comment's dateUtc is written only from a known UTC time, not from a local w:date with a Z (#4079) 2026-10-24 21:31:35 +00:00
aiongg e211bff0b9 Tests: the history comparison leaves out the comments' UTC stamp too (#4079) 2026-10-24 21:16:54 +00:00
LQRD 68e5ae2253 #4085: include selected paragraph marks in the highlight decision
Match format_range for whole-cell segments and ordinary targets, including empty
paragraphs. Partial text columns leave their unselected marks out of the check.
Keep the large-run fixture prefix mark blue so it cannot mask the tail regression.

Before the fix, whole-cell and ordinary-mark regressions failed while the other5
highlight controls passed. All7 now pass, including inherited/empty cells,
unselected neighbours, empty-only ranges, partial columns and Undo/Redo.
Full cargo xtask ci passed all8 gates with serial tests. Previous head's CodeRabbit
docstring measurement95.24% exceeds80%; all3 new tests have documentation.
Native Word comparison remains pending. No new interface strings.
2026-10-25 02:16:26 +05:00
aiongg 5fb5ce3606 Comment times: leap years with is_multiple_of (clippy) 2026-10-24 21:08:15 +00:00
aiongg 69137e8469 cargo fmt 2026-10-24 21:06:29 +00:00
aiongg 34ec59fee1 Table of contents: Replace and Remove take the heading paragraph above the field's paragraph with the table (#4039) 2026-10-24 21:05:19 +00:00
aiongg 17804c706f Comment times: a Z on the local date alone is shown as written (older files); WordCraft's comments carry their UTC time; impossible dates and seconds show nothing (#4079) 2026-10-24 21:05:19 +00:00
aiongg 29c48a7eae Tables: cell widths start after a row's skipped grid columns (gridBefore), now that Insert Column syncs them (#4120) 2026-10-24 21:05:19 +00:00
aiongg 1dbbade6fa A command that changes nothing drops what it cached at the revision it touched, since that number comes round again (#4004) 2026-10-24 21:05:19 +00:00
aiongg db8efbe593 LaTeX: \'{} and \"{} import as the spacing acute and diaeresis, not an apostrophe and a quotation mark (#4170) 2026-10-24 21:05:19 +00:00
aiongg 226b3aa25f Web host bridge: Save As in a format that doesn't keep everything is a copy, saveAs false; no bridge on an opaque origin (#3822) 2026-10-24 21:05:19 +00:00
aiongg 528fcb21a3 Release and CI: the suite's craft-fonts pin (bfcbf714, the same fonts as a71c20e) instead of an app override (#3888) 2026-10-24 21:05:19 +00:00
aiongg 54f68cac11 Integration: #4004's restored layout revision gets its own name beside the outline's rev_before (#4014) 2026-10-24 21:05:19 +00:00
aiongg dd8ea27b99 Merge PR #4039: #3889, #3891: Update Table keeps the styles and columns of a localized table of contents 2026-10-24 21:05:19 +00:00
aiongg dd865648c2 Merge PR #4079: Comments: times in the user's own time zone, in the pane and the balloons (#2322, #2337) 2026-10-24 21:05:18 +00:00
aiongg 8e8d8b4dd2 Merge PR #4172: Read Mode: a Page color menu shows the columns on white, sepia or a dark page 2026-10-24 21:05:18 +00:00
aiongg 0e571c1fc6 Merge PR #4133: #4085: toggle the last highlight colour with the keyboard shortcut 2026-10-24 21:05:13 +00:00
aiongg 6ba3d8d2a7 Merge PR #4123: AutoFormat: Enter twice after a short line makes it a heading 2026-10-24 21:05:05 +00:00
Emmanuel 2b3164f6f4 autoscroll: note the no-pointer case in paint 2026-10-25 02:24:26 +05:30
aiongg 540d0b2b34 Merge PR #4101: AutoCorrect: words after a no-break space are corrected 2026-10-24 20:42:03 +00:00
aiongg 4a4877e433 Merge PR #4097: Layout: include exact line-bottom contact for floating tables (#3977) 2026-10-24 20:42:02 +00:00
aiongg 39bf1a6c76 Merge PR #4074: cu20we: fix box float paragraph origins and preserve shape line caps 2026-10-24 20:42:02 +00:00
aiongg 5d9d9f5be4 Merge PR #4004: #4001: A command that changes nothing is not an edit 2026-10-24 20:42:01 +00:00
aiongg 26c4d4b869 Merge PR #4170: Import LaTeX \^{} and \~{} as plain ^ and ~ 2026-10-24 20:38:55 +00:00
aiongg e62af05110 Merge PR #4171: Picture memory limits for 6 audit issues: one decoder, TIFF strips, styles, Remove Background, Windows paste, render cache 2026-10-24 20:38:55 +00:00
aiongg a4ba4b8f0f Merge PR #4147: Reject '+' sign in print page ranges 2026-10-24 20:38:53 +00:00
aiongg d5c2d88935 Merge PR #4129: AutoFormat: border lines and +---+ tables track the characters they delete 2026-10-24 20:38:52 +00:00
aiongg 6498bb20f6 Merge PR #4121: MCP: keep serving when the app isn't open yet (#4078) 2026-10-24 20:38:51 +00:00
aiongg d0a9dde289 Merge PR #4120: Engine: keep cell widths in step after Insert Column; validate a version restore before saving 2026-10-24 20:38:50 +00:00
aiongg 35f0a7c785 Merge PR #4113: AutoFormat: Tab and Backspace at the start of a line set the paragraph's indents 2026-10-24 20:38:50 +00:00