Linus Rath
b5964ac544
fix: find the invited attendee under any sending identity when answering an invite #1283
2026-10-19 18:41:05 +02:00
Linus Rath
c870c1f118
Merge pull request #1288 from VasilisNtovolos/fix/preview-history-lifecycle
...
fix: keep file previews open during Strict Mode replay
2026-10-19 18:33:23 +02:00
Linus Rath
65c3d90e4d
Merge pull request #1287 from VasilisNtovolos/fix/conversation-blob-routing
...
fix: route conversation blobs by originating message
2026-10-19 18:33:22 +02:00
Linus Rath
c0205bcb68
Merge pull request #1286 from tobiasge/fix/month-view-column-alignment
...
fix(calendar): align month view day columns with the header
2026-10-19 18:33:20 +02:00
Linus Rath
f5aa338556
refactor: give every settings page section an anchor for the jump row and links
2026-10-19 18:19:28 +02:00
Linus Rath
401d49471e
feat: let settings links name a section and add a jump row to each page
2026-10-19 18:14:01 +02:00
Linus Rath
a615f96876
refactor: regroup the settings sidebar into mail and apps with plugin pages under add-ons
2026-10-19 18:07:48 +02:00
Linus Rath
dc521e11ca
refactor: combine sidebar apps and plugins into add-ons, about and debug into backup and reset
2026-10-19 18:03:42 +02:00
Linus Rath
0b3bd26c9c
refactor: fold download naming into reading as an advanced section
2026-10-19 17:59:30 +02:00
Linus Rath
f8aca5bb25
refactor: put folders and tags on one page
2026-10-19 17:57:38 +02:00
Linus Rath
c57f82f0a7
refactor: group composing into sections and fold templates and a signatures link into it
2026-10-19 17:55:12 +02:00
Linus Rath
a591ae0683
refactor: merge language, default apps and the tour into a general page
2026-10-19 17:51:26 +02:00
Linus Rath
58f968a48c
refactor: lead notifications with new mail, move the tab badge in and invitation parsing to calendar
2026-10-19 17:48:57 +02:00
Linus Rath
d86aa1d12b
refactor: group security into sign-in, other apps and devices, and encryption
2026-10-19 17:46:42 +02:00
Linus Rath
b1fa88841d
refactor: move identities, sub-addressing and multi-account options onto the account page
2026-10-19 17:44:11 +02:00
Linus Rath
5b1d056eef
feat: split the message list out of reading and fold content and senders into it
2026-10-19 17:40:52 +02:00
Linus Rath
1025c1973d
refactor: fold the layout and themes tabs into appearance as sections
2026-10-19 17:33:39 +02:00
Linus Rath
988416aa3d
feat: add an advanced switch that hides power-user settings until turned on
2026-10-19 17:20:38 +02:00
VasilisNtovolos
7fefc128a1
fix: keep file previews open during Strict Mode replay
2026-10-19 16:08:56 +03:00
VasilisNtovolos
a73ac09035
fix: route conversation blobs by originating message
2026-10-19 15:43:38 +03:00
Linus Rath
391ed6c018
Merge branch 'fix/security-audit-2026-10'
2026-10-19 12:58:50 +02:00
Tobias Genannt
decaa07a5a
fix(calendar): align month view day columns with the header
...
The day header in the calendar month view was rendered outside the vertical scroll container, causing each header column to divide the full container width (100%) while the day grid cells below divided the remaining width excluding the vertical scrollbar. On platforms with classic scrollbars, this caused an escalating misalignment between the header columns and the day cells.
Move the day header inside the scroll container as a sticky row (sticky top-0 z-50 bg-background), matching the pattern established in the week and day views, and account for the header height in row minimum height, scrollToFocus, and sampleVisibleMonth.
2026-10-19 12:42:20 +02:00
Linus Rath
62c6a3666a
fix: keep the quote containment styles in the editor and out of the sent mail
2026-10-19 01:44:29 +02:00
Linus Rath
29b33eb46c
fix: show attachment names without directional override characters
2026-10-19 01:32:30 +02:00
Linus Rath
0b01a2d066
fix: ask before handing a sign-in to the mobile app and only to its own callback link
2026-10-19 01:22:19 +02:00
Linus Rath
ff98865f90
fix: keep a quoted original from painting over the composer with a fixed-position overlay
2026-10-19 01:15:39 +02:00
Linus Rath
0f1fc2bb5d
fix: sanitise imported and synced HTML templates before the composer previews them
2026-10-19 01:15:39 +02:00
Linus Rath
bf64f4d48a
fix: leave oversized winmail.dat and embedded message parts as attachments instead of decoding them on open
2026-10-19 01:15:05 +02:00
Linus Rath
c02aadd6a9
fix: preview HTML attachments as sanitised text in a locked frame instead of a same-origin blob document
2026-10-19 00:58:31 +02:00
Linus Rath
29cb6b7f61
fix: keep a crafted style attribute or read-receipt header from freezing the message view
2026-10-19 00:54:24 +02:00
Linus Rath
aeb2aeda66
fix: stop a click on a mention chip from opening the mailto handler in Firefox
2026-10-19 00:47:05 +02:00
Linus Rath
38c983a886
fix: open the mention card on click and show on hover that the chip is clickable
2026-10-19 00:38:01 +02:00
Linus Rath
4c0017d0c1
feat: rework the demo around one persona with two accounts and a shared mailbox
...
The demo user becomes Nora Lindqvist, engineering lead at Meridian Labs,
in the week of a product launch. The fixtures tell one story across mail,
contacts, calendar, tasks and files, and exercise the features the
screenshots and the public demo should show:
- a second, mail-only login (her personal domain) and the shared Support
mailbox delegated to the work account, so the account switcher, the
shared section and the merged inbox have real content
- raw headers the way Stalwart writes them: the sender check fails on
the phishing mail, newsletters carry a one-click unsubscribe, one mail
asks for a read receipt, and spam scores show in the details
- an iMIP invitation with a served .ics, an event waiting for the answer
on the calendar, and RSVP patches applied in the demo client
- @mentions as mailto links in a received mail, a verification code
twelve minutes old, nested folders, named tags on the mail, contact
groups, a scheduled message and tasks switched on
- every attachment and file backed by real bytes under public/demo,
generated by `scripts/demo-assets/generate.mjs`; contact photos are
bundled portraits instead of requests to randomuser.me
- folder counts computed from the mail instead of hand-kept numbers
Demo login seeds the tags, templates and merged-inbox settings once per
device and switches the cross-account gate on for the session; "Reset"
restores them. `bulwark-demo-simulate=off` in localStorage stops the
simulated incoming mail for screenshot runs.
2026-10-18 19:48:11 +02:00
Linus Rath
eb18a13878
feat: show the contact card for @mentions in the composer and in received mail
2026-10-18 18:23:45 +02:00
Linus Rath
bfe98b49a0
fix: act on the clicked row when another account has a message with the same id (GHSA-8x23-qw3w-mhrx)
2026-10-18 17:54:48 +02:00
Linus Rath
fbae8acfb8
feat: turn @mentions into chips with a hover card
2026-10-18 17:52:11 +02:00
Linus Rath
0ac7bcb385
feat: show the message list as columns with one-line conversation rows #262
2026-10-18 17:37:21 +02:00
Linus Rath
8791fa5176
feat: offer contacts in @ mentions and add the picked one as a recipient
2026-10-18 16:36:28 +02:00
Linus Rath
ea1d1e2870
fix: stop re-rendering every row when a search starts
2026-10-18 16:01:43 +02:00
Linus Rath
4fa22200e7
fix: keep vacation forwarding and plugin vetoes when a tag rename rewrites the filters #854
2026-10-18 15:03:20 +02:00
Linus Rath
45840e722a
Merge pull request #854 from dev-hive-kazniisa/fix/keyword-rename-sieve-sync
...
fix: renaming a tag leaves filter rules tagging under the old id
2026-10-18 15:02:15 +02:00
Linus Rath
eb100c6aac
fix: draw the Estonian flag without a shared clip path id
2026-10-18 14:39:59 +02:00
Linus Rath
1e992e6c7f
fix: check plugin dropdown messages before the host draws them
2026-10-18 14:39:59 +02:00
Linus Rath
be06956398
test: cover the From pick when replying to another connected account
2026-10-18 14:39:59 +02:00
Linus Rath
811e175cd0
fix: tell today's mail by the time zone setting in the sender line #1259
2026-10-18 14:39:58 +02:00
Linus Rath
2f7873e756
test: update the inline image reply test for the current composer mocks
2026-10-18 14:39:07 +02:00
Linus Rath
402188a4d5
Merge pull request #1125 from guisea/fix/inline-attachments-reply-forward
...
fix(email-composer): normalize bracketed content-ids for inline reply/forward images
2026-10-18 14:38:13 +02:00
Linus Rath
1ff7db0827
Merge pull request #1254 from raudraido/feat/add-estonian-locale
...
feat: add Estonian (et) locale
2026-10-18 14:34:37 +02:00
Linus Rath
100da43991
Merge pull request #1247 from lucamzanon/feat/account-archive-passwords
...
feat: optionally keep mailbox passwords in the account list backup
2026-10-18 14:34:31 +02:00
Linus Rath
5aba2a92c5
Merge pull request #1251 from tobiasge/feat/plugin-ui-kit-combobox
...
feat(plugins): add Combobox component to UI kit with host floating dropdown portal
2026-10-18 14:34:26 +02:00