Commit Graph
3633 Commits
Author SHA1 Message Date
Linus Rath c8bfc46091 fix: update folder counts as soon as a send removes its draft #1412 2026-10-29 14:32:26 +01:00
Linus Rath 1411907082 fix: show the two-factor code prompt as the next sign-in step, not an error #1422 2026-10-29 14:31:41 +01:00
Linus Rath 863806fc65 fix: translate system folder names in the advanced search folder list #1429 2026-10-29 14:24:07 +01:00
Linus Rath e1b43c894f fix: stop warning about failed checks on an invitation that passes dmarc #1403 2026-10-29 14:20:44 +01:00
Linus Rath f8f2e93cd9 fix: count a dkim pass the receiver reports by header.i only #1420 2026-10-29 14:18:48 +01:00
Linus Rath 6d96f31652 fix: keep the composer's spacing on the reply attribution line 2026-10-29 14:14:41 +01:00
Linus Rath c7d0525f04 fix: stop waiting for plugin search results when the search fails 2026-10-29 14:14:10 +01:00
Linus Rath a75db40f7f Merge pull request #1421 from pcatapan/codex/composer-quote-collapse 2026-10-29 14:12:41 +01:00
Linus Rath 5ab935a879 Merge pull request #1417 from b3rsrk/fix/foreign-draft-paragraph-spacing 2026-10-29 14:12:38 +01:00
Linus Rath 47ee263d76 Merge pull request #1419 from HOLOEYE-JZ/feat/plugin-search-results-pending
# Conflicts:
#	components/email/plugin-search-results.tsx
2026-10-29 14:11:34 +01:00
Linus Rath 8e533f090c Merge pull request #1418 from HOLOEYE-JZ/feat/plugin-search-result-marks 2026-10-29 14:11:11 +01:00
Linus Rath 720a903d57 Merge pull request #1428 from VasilisNtovolos/fix/download-all-error-feedback 2026-10-29 14:11:07 +01:00
Linus Rath 4406a6435e Merge pull request #1426 from VasilisNtovolos/fix/attachment-download-error-feedback 2026-10-29 14:10:42 +01:00
Linus Rath 2c1645ac2d Merge pull request #1427 from creyD/main 2026-10-29 14:10:38 +01:00
Linus Rath 764ee97692 test: bring the main test suite back to green after the vitest 5 upgrade and header rework 2026-10-29 14:07:40 +01:00
Linus Rath 5aa44a5bfe chore: update vitest to 5, jsdom to 30 and typescript to 6 2026-10-29 14:00:54 +01:00
VasilisNtovolos 995262bde2 fix: report partial and failed attachment ZIP downloads 2026-10-29 14:02:24 +02:00
Conrad ed84cd29c9 fix: read address headers in the Addresses form when a rule runs on existing messages #1424 2026-10-29 12:26:04 +01:00
VasilisNtovolos 35064316ad fix: show errors when attachment downloads fail 2026-10-29 13:19:29 +02:00
pcatapan 9e00896043 feat(composer): collapse quoted reply history behind an ellipsis 2026-10-29 11:00:58 +01:00
Jacob Zeitz 03876158fe feat(plugins): hold the search results block's place while a plugin still searches
A plugin's results to a search came all at once after its handler answered,
with nothing before: the block then appeared above the message list and
pushed it down, under a pointer about to click a row. onProvideSearchResults
handlers that search elsewhere (a CRM's search by meaning) take seconds.

Each plugin's answer now shows as it comes, and the store keeps the plugins
still asked. One that has not answered after 300 ms gets the block at a fixed
height with placeholder rows under "Searching for more results…"; its
entries then fill that height, so the list moves once, with its own results.
A plugin that answers at once (one not searching for this query) shows
nothing.
2026-10-29 10:25:59 +01:00
Jacob ZeitzandClaude Opus 5.5 fa4db60032 feat(plugins): let a plugin search result's snippet mark what matched
An entry from onProvideSearchResults may wrap what matched in <mark>, as
SearchSnippet/get does, and the block above the message list highlights
it with the list's own SearchSnippetText. The host keeps the marks,
escapes everything else and cuts the snippet by its text, closing a mark
it cuts, so the snippet is still never rendered as HTML.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-29 10:03:27 +01:00
Till OberbeckmannandClaude Opus 5 797fb875e1 fix: keep the paragraph spacing of a draft written elsewhere #1416
A draft does not have to come from the composer: the JMAP API, another
client, an automation or a template can leave one in Drafts, and its
paragraphs carry no style, so every mail client lays them out with the
user agent's 1em margins. Since #1340 the composer stamps its own 4px
margin on every paragraph it serializes, so opening such a draft to read
it over and pressing Send re-flowed the message, and the composer showed
it at a spacing the recipient would never see.

What is loaded now keeps the spacing it came with: a paragraph with text
and no margin of its own is stamped with the mail default on the way in,
so the editor shows the message's own layout and what goes out is what
came in. The empty paragraph a new message is scaffolded with is left
alone, as are table cells, the quoted original and an embedded
signature. addParagraphSpacing skips a paragraph that already states a
margin, so nothing is declared twice.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-10-29 10:01:12 +01:00
Linus Rath 4aea0976a4 chore: update dependencies, postal-mime 4 and jest-dom 7 2026-10-29 01:52:40 +01:00
Linus Rath 55f8772c05 ci: update the GitHub Actions to their current major versions 2026-10-29 01:52:21 +01:00
Linus Rath 99b6857d90 fix: keep settings tab labels on one line 2026-10-29 00:57:07 +01:00
Linus Rath 6b41692d81 fix: show themes the admin installed in the theme picker without opening mail first 2026-10-29 00:55:41 +01:00
Linus Rath 367e29913a fix: show the advanced settings switch below the app info in the settings sidebar 2026-10-29 00:49:15 +01:00
Linus Rath 6c681020b2 fix: show a clearer no-results icon and replace hand-drawn icons with Tabler ones 2026-10-29 00:22:12 +01:00
Linus Rath 63375f6870 Merge pull request #1410 from motofix/fix/1407-vcard-4-export
fix: export contacts as valid vCard 4.0 #1407
2026-10-29 00:13:30 +01:00
Linus Rath 5a8810b007 fix: let the Lite build reference the document template endpoint 2026-10-29 00:12:35 +01:00
Linus Rath e3cd9546fc fix: stop Safari's login dialog in Lite on Stalwart when the access token expired #1396 2026-10-29 00:05:50 +01:00
Linus Rath f12a13e1fd feat: create documents in the formats the document editor can edit from New file #1393 2026-10-29 00:01:13 +01:00
Linus Rath 8b35962efb fix: show section labels in sentence case instead of all caps 2026-10-28 22:26:39 +01:00
Linus Rath 39eb38a0fa fix: give the mail, calendar, contacts, files and settings headers one search field and one button style 2026-10-28 22:16:48 +01:00
Linus Rath 0d3916cfcc feat: add a light event colors setting that shows calendar events tinted with a color bar, as in Outlook 2026-10-28 21:50:47 +01:00
Linus Rath 67b44fd5de fix: keep the inner edge of color bars straight on rounded events, tasks and notes 2026-10-28 21:50:29 +01:00
Linus Rath 38720f2d43 feat: print contact lists, contacts, groups and directory entries from Print or Ctrl+P 2026-10-28 21:08:21 +01:00
Linus Rath d5bf6b98c4 feat: print the calendar's month, week, day, agenda, tasks and single events 2026-10-28 21:08:20 +01:00
Linus Rath ba13866311 feat: print a clean copy of the page instead of the app shell 2026-10-28 21:08:20 +01:00
Linus Rath d9afc9b643 fix: open the reader's more menu in place instead of sliding in from the right 2026-10-28 21:04:30 +01:00
Linus Rath 14871f784d fix: move view source from the reader toolbar into the more menu 2026-10-28 20:08:23 +01:00
Linus Rath 9aa132c02f feat: flash the settings section a jump-row button scrolls to 2026-10-28 20:05:13 +01:00
Linus Rath 1c8579fdbc fix: keep a setting row's shape and divider when the settings search highlights it 2026-10-28 20:00:41 +01:00
Linus Rath 785c19fe8c fix: show the version footer in the settings sidebar only with advanced settings on 2026-10-28 19:57:01 +01:00
Linus Rath 6559b34135 fix: keep Mountain View's row actions, checkbox and star on the subject line when attachment chips make the row taller 2026-10-28 19:53:33 +01:00
Linus Rath 720e146225 feat: make the mail filter panel simpler with on/off toggles, date and size ranges and every field in view 2026-10-28 19:38:46 +01:00
Linus Rath 8916a4ef75 fix: keep the search clear button inside the field and move filter, sort and refresh out of the crowded list header 2026-10-28 19:26:44 +01:00
Linus Rath 2b24b4503f fix: load shared accounts' folders in batched, parallel requests #1409 2026-10-28 19:15:51 +01:00
Linus Rath 8c38d44448 Merge branch 'main' of https://github.com/bulwarkmail/webmail 2026-10-28 18:06:09 +01:00