Linus Rath
6ccd384f35
fix: show replies sent in demo mode in the conversation they answer
2026-10-31 01:55:46 +01:00
Linus Rath
3bb9f7df84
fix: lead with the address when two accounts share a name in the account switcher
2026-10-31 01:37:06 +01:00
Linus Rath
dafdda5347
fix: let search results move into the open folder #1452
2026-10-31 01:16:34 +01:00
Linus Rath
d2f9f1a1a4
fix: send from a shared mailbox through its own identity for the from address #1450
2026-10-31 01:09:49 +01:00
Linus Rath
4a0772dc01
fix: open the next unread message after archiving in unread first #1453
2026-10-31 00:37:05 +01:00
Linus Rath
8098039d69
feat: show booking cards only for mail from verified senders
2026-10-30 04:41:29 +01:00
Linus Rath
3945d38bbd
test: commit the bimi certificate fixtures the gitignore dropped
2026-10-30 01:03:55 +01:00
Linus Rath
1da4f41f43
Merge branch 'feat/e-invoice-host'
2026-10-30 00:41:54 +01:00
Linus Rath
3c5b45a506
fix: make unread mail stand out in the flat fields theme
2026-10-30 00:17:19 +01:00
Linus Rath
cf0eb03c4a
feat: show the sender's BIMI logo as the sender icon when the message passes DMARC
...
Stalwart does no BIMI, so sender icons were only ever favicons, which
anyone controls for any domain. The webmail server now does the
receiver side itself at /api/bimi, and avatars ask it only for
messages whose own Authentication-Results say dmarc=pass for the exact
From domain.
- `lib/bimi/`: DMARC policy check (quarantine or reject, pct=100, the
parent domain's sp and p for subdomains), the assertion record with
fallback to the parent domain, mark certificate validation (chain to
pinned DigiCert, GlobalSign and SSL.com VMC roots, BIMI key purpose,
validity, SAN, SCTs present, CRL revocation, logo from the logotype
extension), SVG Tiny PS checks and rendering to PNG, caching
- logos backed only by the DNS record show by default; the admin
setting "Require a mark certificate" (`BIMI_REQUIRE_CERTIFICATE`)
limits them to VMC and CMC backed ones
- a check mark beside the sender's name for certificate-backed logos
- avatars try contact photo, BIMI logo, plugin avatar, favicon; the
sender warning shield still wins, and logos follow the sender icons
setting and the no-third-party-traffic mode
- the two-label public suffix list moved to `lib/root-domain.ts`
SCT signatures are not verified and only the default selector is used.
2026-10-30 00:12:24 +01:00
Linus Rath
2c34afce2d
fix: listen on the HOSTNAME and PORT from .env.local with npm start #1441
2026-10-30 00:01:29 +01:00
Linus Rath
fb751a30df
feat: add a table to the plugin UI kit for line items and totals
2026-10-29 23:33:25 +01:00
Linus Rath
23767b9c80
feat: let plugins print a page they made, such as a readable invoice
2026-10-29 23:30:43 +01:00
Linus Rath
f6b641c94e
feat: let plugins forward a message with its attachments after the user allows the address once
2026-10-29 23:27:15 +01:00
Linus Rath
605a3983b1
feat: show a warning shield instead of the sender icon when the sender check fails
2026-10-29 21:13:36 +01:00
Linus Rath
50b3ddccec
feat: let admins keep the refresh token valid on sign-out so Stalwart keeps the consent #1388
2026-10-29 20:47:18 +01:00
Linus Rath
357b6af3c9
feat: offer to remove a cancelled meeting from the calendar in the cancellation mail #1425
2026-10-29 20:24:27 +01:00
Linus Rath
0b4e501142
feat: make the login email placeholder configurable #1423
2026-10-29 20:24:26 +01:00
Linus Rath
d875714f35
feat: offer remember me on the sso-only login and apply it to every sso path #1437
2026-10-29 20:06:44 +01:00
Linus Rath
b25e738a3e
fix: give calendar default alerts account-wide unique ids #1435
2026-10-29 20:06:16 +01:00
Linus Rath
e363427d0e
fix: decode escaped colons in imported vcard notes #1438
2026-10-29 20:06:16 +01:00
Linus Rath
a86023787f
fix: give Aurora Glass solid surfaces, menus and dialogs when transparency is reduced
2026-10-29 19:38:46 +01:00
Linus Rath
35be105a73
fix: size small text in rem so it follows the browser and app text size
2026-10-29 19:38:45 +01:00
Linus Rath
7f74fcf9bf
fix: move toasts away from the focused control and keep focus clear of sticky headers inside panes
2026-10-29 19:38:45 +01:00
Linus Rath
b22968a7df
fix: show the message list, not only the reader, with a large browser text size and wrap cut-off labels
2026-10-29 19:38:45 +01:00
Linus Rath
e57e922950
feat: make buttons, menu items, rows and switches 44px when large targets is on
2026-10-29 19:38:45 +01:00
Linus Rath
9f6c7b99c9
fix: raise text contrast to 4.5:1 in every built-in theme, light and dark
2026-10-29 19:38:45 +01:00
Linus Rath
a1ee9035de
fix: scroll without gliding when reduce motion is on
2026-10-29 19:38:45 +01:00
Linus Rath
7525fe18e4
fix: keep switches, selections and pressed buttons visible in Windows contrast themes
2026-10-29 19:38:44 +01:00
Linus Rath
c4dfa6f3e4
fix: draw the focus outline on plugin kit buttons, fields and switches
2026-10-29 19:38:44 +01:00
Linus Rath
1111dd6709
fix: show the focus outline on menu items, grid cells and other roving-focus controls
2026-10-29 19:38:44 +01:00
Linus Rath
a6701795eb
fix: skip screen reader announcements once the page is gone
2026-10-29 18:58:11 +01:00
Linus Rath
623c9e1792
feat: let operators set accessibility statement, barrier report, help, Easy Read and sign language links
2026-10-29 18:27:35 +01:00
Linus Rath
4832d37ff0
test: parse plain-language strings as ICU when comparing their placeholders
2026-10-29 18:10:29 +01:00
Linus Rath
bb739c7445
feat: use plainer English and German wording for sign-in and error messages when plain language is on
2026-10-29 18:07:44 +01:00
Linus Rath
4e2affe406
fix: name the remaining search boxes, filter fields and settings inputs that only had a placeholder
2026-10-29 18:03:00 +01:00
Linus Rath
ef13556a01
fix: give every contact form field a label screen readers read out
2026-10-29 18:02:59 +01:00
Linus Rath
01a6ab22d2
fix: name the plugin kit's buttons in the app language and read field hints and errors with the field
2026-10-29 18:02:58 +01:00
Linus Rath
da215b8c06
fix: underline links in mail shown in the app's colours so button links stay recognisable
2026-10-29 17:53:59 +01:00
Linus Rath
af3019ea2b
feat: read a message aloud with the browser's voice, highlighting what it reads
2026-10-29 17:53:58 +01:00
Linus Rath
bb78697981
feat: pause animated images in mail with a play button
2026-10-29 17:53:57 +01:00
Linus Rath
1e929b0a95
feat: read HTML mail as plain text, by default or per message
2026-10-29 17:53:57 +01:00
Linus Rath
3c4d63006c
feat: scale wide mail down to the pane on any screen with fit wide mail on
2026-10-29 17:53:56 +01:00
Linus Rath
dcc0d600f4
feat: show HTML mail in the app's font, colours and spacing when styles are overridden
2026-10-29 17:53:56 +01:00
Linus Rath
24a13cc1f8
fix: stop animations inside mail when reduce motion is on
2026-10-29 17:53:55 +01:00
Linus Rath
c07ba1a370
feat: show message bodies at the chosen text size and enlarge text below the minimum
2026-10-29 17:53:55 +01:00
Linus Rath
c20b9846b9
fix: name each message frame after its subject and give it the mail's language
2026-10-29 17:53:54 +01:00
Linus Rath
cf4d02b49b
feat: draw calendar, tag and folder colours in a colour-blind-safe palette when that setting is on
2026-10-29 17:53:51 +01:00
Linus Rath
d713d31af3
feat: announce how much new mail came and flash the tab title slowly with visual alerts
2026-10-29 17:53:49 +01:00
Linus Rath
a7ce265ac8
feat: keep plugin notifications off the desktop while do not disturb is on
2026-10-29 17:53:48 +01:00