What's Changed
- doc: encrypted .docx opens again — the CFB guard refuses only more FAT sectors than the file has (#5109) by @Bra1nZ in #5830
- ODT: a frame offering several picture formats shows one it can read (gap 19) by @alehel in #5706
- ODT: a heading's text of another size keeps it (gap 19) by @alehel in #5725
- ODT: a table row that doesn't break across pages stays so (gap 19) by @alehel in #5726
- Release: refresh contributor credits for each release (#5844) by @Luis-0508 in #5845
- ODT: watermark and odd/even page changes to a file are saved (gap 19) by @alehel in #5729
- Numbering: Thai numbers are drawn in Thai digits (part of #5757) by @Hamza0101 in #5784
- Tests: run the file commands through the hostile-parameter test (#3719) by @rabis7575 in #5688
- Save As suggests a new document's first words as its name (#5793) by @Hamza0101 in #5795
- fix(ui): keep Page Setup fields bounded after long paste by @MMexicann in #5696
- .doc import: resolve character formatting per run, not per character (#5478) by @vangel76 in #5495
- Links: Ctrl+K on a selection shows the changed Text to display by @iAmRarted in #5497
- backstage: the community link honors the community-button setting by @Bra1nZ in #5909
- Scrolling: the document's scroll bars show without the pointer on them (#5746) by @ZIDAN44 in #5828
- fix(fields): quoted-argument backslash escapes; body PAGE in a cardinal-text section by @Harrison-Booth in #4579
- RTF: honor Unicode fallback counts above eight by @MMexicann in #5607
- CLI: preserve non-Unicode input paths after options by @MMexicann in #5611
- Shading on text selected inside a paragraph shades the text, so No Color takes off an orange shading (#4685) by @D13GOOOO in #4702
- Layout: a picture lowered past its height lowers its line as far, as in Word by @Morzilla in #5796
- Styles pane: the scroll bar no longer covers the a / ¶ markers (#4753) by @TheRenegadeDev in #4882
- Escape a heading's trailing '#' on Markdown export by @Silvertree2010 in #4808
- Navigation pane: test that the tabs fit the narrowest pane in every language (#4482) by @TheRenegadeDev in #4883
- Decode HTML character references written without ';' by @Silvertree2010 in #4820
- Styles gallery: reads from the right in a right-to-left interface (#5566) by @ZIDAN44 in #5708
- ODT: a file's font declarations are kept (gap 19) by @alehel in #5720
- Search: the title bar's box takes the typing in place, its results dropping down under it, as in Word (#5398) by @D13GOOOO in #5475
- Linux: ignore an AppImage environment inherited from another program (#5653) by @StrajnarFilip in #5690
- Lists: a numFmt none level shows its literal text, so RESPONSE: labels the paragraph (#4985) by @D13GOOOO in #5055
- A template opened from the file manager starts a new document (#3433) by @StrajnarFilip in #5698
- Font menus: entries are drawn from a few shared textures, so Windows no longer shows them on black, white or red strips (#5105) by @D13GOOOO in #5111
- Table Sort: reject invalid column selectors (#5531) by @OPUZZLES in #5533
- Paste Special pictures must be regular files; xtask stats skips symlinks, assets test uses a private folder by @dylanmtaylor in #5471
- Arabic letters join across a change of formatting (#4093) by @StrajnarFilip in #5691
- Pictures: a linked picture shows its link on hover and follows it on Ctrl+click; DOCX keeps the link on the drawing (#5267) by @D13GOOOO in #5295
- Tests: the file name field updates on Save As and Rename (#3796) by @vangel76 in #5308
- #5469: Size keeps the side it isn't asked to change by @rabis7575 in #5474
- Shapes in Strict Open XML documents open (#3548) by @StrajnarFilip in #5697
- Find: match smart single quotes from a keyboard apostrophe (#5388) by @OPUZZLES in #5401
- PDF export: leave the author out when personal information is removed by @dylanmtaylor in #5452
- Layout: a page break before applies at a continuous section's top mid-page by @finwarman in #5287
- Layout: look at the text after a decimal tab once, not once per cluster by @dylanmtaylor in #5343
- fix(ui): the File page scrolls across its full width, with the bar at the window edge (#5282) by @marcwgls in #5320
- DOCX: a VML text box keeps its text direction (layout-flow) (#5193) by @naxvog in #5346
- XLSX import: index worksheet relationships by id by @dylanmtaylor in #5424
- Preserve paragraph text direction in DOCX by @Harrison-Booth in #5392
- Layout: a turned inline picture with no recorded room for the turn keeps its line to its frame, as in Word by @naxvog in #5448
- Layout: a line can break after a hyphen before a slash, like Word (#3408) by @naxvog in #5348
- Output counts locked SEQ fields, and not tracked-deleted ones, as Word does by @pakiat in #5594
- Layout: a picture in a paragraph whose hidden mark closes a section keeps its room (#5288) by @naxvog in #5347
- Rulers: the spaces between text columns are shaded and their edges drag (#5197) by @RatkoR in #5261
- Track Changes: resolving away an empty paragraph with a section break keeps the next paragraph's properties (#5667) by @MichaelMuClaude in #5734
- docbin: open Word 97-2003 files in compatibility mode 11 by @SenuraMalaka in #5905
- test(mcp): gate the names helper to unix, where its only test runs by @Bardanghimire in #5879
- Fix: style-set gallery follows RTL interface direction by @batistalucasv in #5857
- fix: reject non-regular files when reading template titles by @Bardanghimire in #5904
- Proofing: Check spelling as you type is one setting for every open document (#5740) by @ashokram-si in #5766
- Layout: a nested table's Can't Split row moves on with its outer row by @naxvog in #5456
- Layout: no line break between a full stop and an opening parenthesis by @naxvog in #5437
- Layout: before Word 2013 layout a floating table moved below another keeps its own left edge by @naxvog in #5442
- picture.change: keep the width and take the new picture's aspect ratio by @kevinj24fr in #5761
- Layout: an empty paragraph after a leading floating table takes no space before by @naxvog in #5440
- docbin: brace and bracket shapes are unfilled unless the file fills them (#5943) by @SenuraMalaka in #5945
- doc: preserve following formatting when deleting an empty paragraph by @frandavid100 in #5929
- XML: normalise line ends in text and CDATA (XML 1.0 §2.11) by @kennyfs in #5898
- docx: normalize TOCHeading gallery content controls with trailing FieldEnd paragraph by @neilcawse in #5952
- wordcraft-web: window.wordcraft, the page command API from craft-web-api by @helenkwok in #5860
- DOCX: resolve LibreOffice font fallback lists to first installed family (#5843) by @batistalucasv in #5851
- DOCX: nested block-level content controls stay block-level when a bookmark follows them, so Word opens the file by @tpawley2001 in #5811
- Layout: superscript and subscript text at 0.65 of its size rounded to the half point by @kevinj24fr in #5802
- layout: line numbers take the "Line Number" style, not a fixed 10 pt grey by @kevinj24fr in #5788
- Layout: contextual spacing drops the space after a cell's last Normal paragraph by @naxvog in #5450
- DOCX import: look relationships up by id through an index by @dylanmtaylor in #5410
- DOCX: paragraph indents and spacing beyond 16 bits wrap as in Word by @tpawley2001 in #5655
- Charts: an automatic series colour follows the series' c:idx (#5963) by @keithcsqueensu in #5975
- Desktop: constrain newly opened window dimensions to available screen width (#5871) by @batistalucasv in #5876
- DOCX import: refuse to carry parts named like WordCraft's bookkeeping by @dylanmtaylor in #5411
- layout: keep post-break anchors with text across a wrapped row by @frandavid100 in #5937
- LaTeX import: parse at most MAX_COLS cells of a tabular row by @dylanmtaylor in #5415
- Spreadsheets: count cell characters as they are added by @dylanmtaylor in #5421
- Export: refuse links holding characters the writers drop by @dylanmtaylor in #5426
- Pictures: measure PNGs from their chunk headers, not the decoder's header read by @dylanmtaylor in #5459
- DOCX save: collect an embedded object's relationship ids in a set by @dylanmtaylor in #5414
- Render: skip drawing paths far past every canvas before flattening by @dylanmtaylor in #5453
- docs/gaps: gap 16 RTL in HTML/ODT/RTF landed (#2695) by @vangel76 in #2696
- Home › Paragraph Tools: nine paragraph conversion and cleanup commands (#5043) by @vangel76 in #5116
- Add Delete Previous Sentence with Ctrl+Shift+Backspace (#3693) by @vangel76 in #5094
- Add persistent screen-only paper color presets (#3398) by @vangel76 in #5115
- View › Window: Switch Windows, Arrange All, View Side by Side and Synchronous Scrolling by @vangel76 in #331
- RTF: footnotes, endnotes and comments are read and written (#1053) by @vangel76 in #1056
- MCP: insert_table tool for filled tables (#2242) by @vangel76 in #2595
- #2729: Layout tests use pinned bundled fonts by @vangel76 in #2783
- Control/MCP: no replay of mutations with unknown outcome; queued requests honour timeouts (#1326, #1331) by @vangel76 in #2596
- Remove documents from the recent list, one by one or all at once by @vangel76 in #2723
- Dark-theme interface text on Linux no longer looks semi-bold by @vangel76 in #3197
- Pointer zoom stretches page rasters until it stops by @vangel76 in #3195
- Updates: the updater reports installing, ready, installed and failed, and installs at exit by @dotCooCoo in #6038
- Updates: take craft-update from craft-libs main at 1b34eba41 by @dotCooCoo in #6070
- Search box: the placeholder text is centred vertically (#3779) by @fluorine in #3802
- Dialogs: draw real tabs in five more dialogs by @fluorine in #4481
New Contributors
- @Luis-0508 made their first contribution in #5845
- @marcwgls made their first contribution in #5320
- @SenuraMalaka made their first contribution in #5905
- @Bardanghimire made their first contribution in #5879
- @batistalucasv made their first contribution in #5857
- @ashokram-si made their first contribution in #5766
- @kevinj24fr made their first contribution in #5761
- @frandavid100 made their first contribution in #5929
- @kennyfs made their first contribution in #5898
- @neilcawse made their first contribution in #5952
- @tpawley2001 made their first contribution in #5811
- @keithcsqueensu made their first contribution in #5975
Full Changelog: v0.16.0...v0.17.0