Linus Rath
701f96adb3
Merge branch 'main' of https://github.com/bulwarkmail/webmail
2026-06-15 15:23:09 +02:00
Linus Rath
b5f15dfdb7
i18n: add missing translation keys across 17 locales
2026-06-15 15:18:47 +02:00
Linus Rath
798a33495e
refactor: remove JMAP status from admin dashboard
2026-06-14 17:15:52 +02:00
Linus Rath
4c6c1aab60
feat: manage shared/group account settings from Accounts page
2026-06-14 17:05:29 +02:00
Linus Rath
848ed9774d
feat: show avatars in recipient autocomplete suggestions
2026-06-14 14:54:27 +02:00
Linus Rath
b32e102ff9
feat: include directory users in recipient autocomplete
2026-06-14 14:52:13 +02:00
Linus Rath
e8feb11983
feat: add telemetry to web setup wizard
2026-06-14 14:35:48 +02:00
Linus Rath
3e12fca517
fix: make telemetry opt-in
2026-06-14 14:31:26 +02:00
Linus Rath
8df483d8c7
fix: don't send connected-account key as JMAP accountId when sharing files #408
2026-06-12 00:36:45 +02:00
Linus Rath
1e63e2469a
fix: strip build-time basePath from router.push redirects after login #390
2026-06-12 00:23:00 +02:00
Linus Rath
e1c28e767a
fix: context menu invisible on first right-click after page load
2026-06-12 00:21:09 +02:00
Linus Rath
fe5645c818
refactor: redesign custom recurrence editor to match modal UI
2026-06-12 00:15:54 +02:00
Linus Rath
38570b1723
Merge branch 'main' of https://github.com/bulwarkmail/webmail
2026-06-12 00:03:52 +02:00
Linus Rath
a4f476945d
feat: JMAP file/folder sharing in Files app #408
2026-06-12 00:02:45 +02:00
Linus Rath
20fd9ff4de
fix: prevent wide email tables from rendering with rotated headers #409
2026-06-11 19:24:05 +02:00
Linus Rath
569dde9985
fix: preserve folder list when mailbox refetch hits concurrent-request limit
2026-06-11 19:10:06 +02:00
Linus Rath
08f344403b
feat: recurrence editor, set-default calendar, and timezone-aware calendar queries
2026-06-11 19:05:11 +02:00
Linus Rath
be58cee989
fix: dedupe scheduling emails, Stalwart-compatible calendar filters
2026-06-11 18:24:43 +02:00
Linus Rath
a27a5be3dd
fix: correct dark-mode background-image inversion and height clipping in email viewer
2026-06-08 15:53:44 +02:00
Linus Rath
964136b540
feat: require re-authentication for device pairing and SSO
2026-06-05 19:23:06 +02:00
Linus Rath
569f688fbf
feat: QR-code SSO login between webmail and mobile app
2026-06-05 18:33:20 +02:00
Linus Rath
1d050f8469
feat: add QR code device pairing for mobile app login
2026-06-05 17:41:55 +02:00
Linus Rath
2e4c0f9eea
Merge branch 'main' of https://github.com/bulwarkmail/webmail
2026-06-05 16:09:12 +02:00
Linus Rath
fd0b866339
fix: open recent contact emails at "/" instead of 404ing on "/mail"
2026-06-05 16:07:38 +02:00
Linus Rath
6350e9dabc
chore: update version to 1.7.4
2026-06-04 12:59:28 +02:00
Linus Rath
7723c134ff
chore: update version to 1.7.4
2026-06-04 12:39:50 +02:00
Linus Rath
d11ed904a9
feat: calendar agenda plugin sidecar + persist email detail sidebar state
2026-06-04 12:35:56 +02:00
Linus Rath
9db7b6b55f
docs: clarify signature byte cap comment is Stalwart-specific
2026-06-04 10:40:42 +02:00
Linus Rath
1460706e60
docs: update README
2026-06-04 10:31:42 +02:00
Linus Rath
27d624758a
chore: update version to 1.7.3
2026-06-04 10:15:50 +02:00
Linus Rath
5288821605
i18n: register Hungarian locale and backfill files.migration_* keys
2026-06-04 00:56:50 +02:00
Linus Rath
ef825b801a
fix: list Files via FileNode/get ids:null so folders are visible
2026-06-04 00:45:08 +02:00
Linus Rath
50cbd66bfd
fix: treat blob-less FileNode as the only folder signal; migrate legacy dir-markers
2026-06-04 00:30:38 +02:00
Linus Rath
d564c874a3
feat: migrate legacy flat-named Files into real hierarchy on load #379
2026-06-03 21:20:25 +02:00
Linus Rath
568abb0e33
fix: remove flatname workaround, store Files as real FileNode #379
2026-06-03 20:53:03 +02:00
Linus Rath
44781f002c
fix: empty Trash for shared and group folders #387
2026-06-03 20:18:02 +02:00
Linus Rath
6f193e0c24
fix: make clicking the active theme a no-op
2026-06-03 19:42:36 +02:00
Linus Rath
6bb85d746c
fix: show light/dark variant chips on Default theme card
2026-06-03 19:42:01 +02:00
Linus Rath
bbd43b5948
feat: render theme cards as a mini mailbox mockup from theme colors
2026-06-03 19:40:54 +02:00
Linus Rath
180331805f
Merge branch 'main' of https://github.com/bulwarkmail/webmail
2026-06-03 19:34:20 +02:00
Linus Rath
9e96b1c24e
fix: distinguish Themes tab icon from Appearance
2026-06-03 19:33:50 +02:00
Linus Rath
40b4b26074
fix: move Themes settings into Appearance category
2026-06-03 19:33:00 +02:00
Linus Rath
9863b9d88e
feat: add Aurora Glass built-in theme
2026-06-03 19:30:51 +02:00
Linus Rath
9953557af0
fix: align account selector header height with search/reply toolbars
2026-06-02 01:19:37 +02:00
Linus Rath
8f7066d194
fix: close pane gaps by centering resize handle on the seam
2026-06-02 01:17:09 +02:00
Linus Rath
75c02f443f
fix: align top bars to uniform h-14 height
2026-06-02 01:08:09 +02:00
Linus Rath
31100b8f87
fix: discover OIDC metadata server-side to avoid CORS failures #382
2026-06-02 00:15:50 +02:00
Linus Rath
152ec99262
feat: add Elastic built-in theme
2026-06-01 23:28:15 +02:00
Linus Rath
ce401c0f59
test: cover withBasePath base-path fallback prefixing
2026-06-01 17:59:19 +02:00
Linus Rath
3035fb046f
feat: surface most severe SPF result and hide "via" badge on spoofed mail
2026-06-01 17:46:57 +02:00
Linus Rath
4659b81538
Merge branch 'main' of https://github.com/bulwarkmail/webmail
2026-06-01 17:42:37 +02:00
Linus Rath
c78dbee60b
fix: move mail from shared group inbox to personal inbox #375
2026-06-01 17:39:28 +02:00
Linus Rath
bc322a1e69
feat: add /api/translate proxy and expose email body to plugins
2026-05-31 18:01:00 +02:00
Linus Rath
6ee3849463
fix: theme plugin slot iframes with host font + color tokens
2026-05-31 16:28:22 +02:00
Linus Rath and Linus Rath
abb249e5df
Fix: gate preview "open in new tab" on inline-safe MIME types
...
The header open-in-new-tab button opened the blob: URL as a top-level
navigation for any preview that produced an objectUrl, including HTML and
SVG attachments. Blob URLs inherit our origin, so a script-bearing
attachment (text/html, image/svg+xml, ...) would execute in-origin when
opened that way - the exact case isMimeTypeSafeForInlinePreview() already
guards. Gate the button on that helper so it only appears for inert types
(images except SVG, audio, video, PDF, text/plain).
2026-05-31 15:58:53 +02:00
Linus Rath
ae66f8d89d
Feature: per-viewer colors for shared calendars ( #345 )
2026-05-31 15:52:27 +02:00
Linus Rath
ad48f4394a
Merge branch 'main' into HEAD
...
# Conflicts:
# app/(main)/layout.tsx
# locales/cs/common.json
# locales/da/common.json
# locales/de/common.json
# locales/en/common.json
# locales/es/common.json
# locales/fr/common.json
# locales/it/common.json
# locales/ja/common.json
# locales/ko/common.json
# locales/lv/common.json
# locales/nl/common.json
# locales/pl/common.json
# locales/pt/common.json
# locales/ru/common.json
# locales/tr/common.json
# locales/uk/common.json
# locales/zh/common.json
2026-05-30 16:23:37 +02:00
Linus Rath
8d79145dba
Merge remote-tracking branch 'origin/main' into pr/quote-header-i18n
2026-05-30 16:15:18 +02:00
Linus Rath
b821f8cc27
Fix: drop single-letter R:/I: subject prefix tokens
2026-05-30 16:04:44 +02:00
Linus Rath
f238ca5898
chore: update package-lock.json
2026-05-28 21:09:50 +02:00
Linus Rath
00b40fc48a
chore: update version to 1.7.2
2026-05-28 20:31:03 +02:00
Linus Rath
856496715b
i18n: add missing translation keys across 16 locales
2026-05-28 20:27:40 +02:00
Linus Rath
eb7eeae1ac
feat: per-domain branding editor in admin panel #332
2026-05-28 20:21:25 +02:00
Linus Rath
6b1a99a70b
docs: document DOMAIN_BRANDING env var in examples and README #332
2026-05-28 20:13:11 +02:00
Linus Rath
1da04c254b
feat: per-domain branding overrides on /api/config, manifest, pwa-icon #332
2026-05-28 20:06:47 +02:00
Linus Rath
8ae5ecba41
feat: policy-controlled push relay URL with optional user lock
2026-05-28 19:45:14 +02:00
Linus Rath
4ff05bd4ec
fix: editable HTML signature in new mail; clean state on every compose entry #329
2026-05-28 19:21:44 +02:00
Linus Rath
7d1fb73290
fix: scope Ctrl/Cmd+Enter send to focused composer
2026-05-28 18:28:07 +02:00
Linus Rath
ad80aa23ca
fix: keep empty viewer pane visible in Pro split layout
2026-05-25 19:07:27 +02:00
Linus Rath
3a8daf8bff
feat: allow drag-and-drop into shared mailboxes
2026-05-25 18:53:54 +02:00
Linus Rath
f8e7cce85a
fix: prevent empty main pane when reordering tabs across panes
2026-05-25 18:25:55 +02:00
Linus Rath
62ebe443f9
fix: align continued multi-week events with week's left edge
2026-05-25 18:13:57 +02:00
Linus Rath
3c0faba837
fix: collapse focus mail layout to multi-line on mobile
2026-05-25 18:05:01 +02:00
Linus Rath
956acb69ce
feat: add NEXT_PUBLIC_DEFAULT_LOCALE for fallback UI locale #243
2026-05-25 17:01:52 +02:00
Linus Rath
e2abc8dee9
fix: prefix remaining <img>, favicon, and WebDAV URLs with basePath #319
2026-05-25 16:45:13 +02:00
Linus Rath
42ec34be21
fix: show end date in event popover for multi-day events #318
2026-05-25 16:28:03 +02:00
Linus Rath
534894c38d
feat: locale-aware date format in email list with preset picker #331
2026-05-25 16:17:32 +02:00
Linus Rath
537707d9ed
feat: include group inboxes in unified mailbox view #328
2026-05-23 16:01:22 +02:00
Linus Rath
afe1e5a67c
fix: restore blob: in object-src and frame-src CSP for PDF/HTML previews
2026-05-23 15:53:58 +02:00
Linus Rath
d13934c2a6
fix: match user-avatar treatment on quick reply
2026-05-23 15:35:10 +02:00
Linus Rath
acc90eb455
feat: add "Move to Trash and mark as read" delete action #323
2026-05-22 19:08:02 +02:00
Linus Rath
5aa6d7a2f0
docs: document OAUTH_ALLOW_PRIVATE_ENDPOINTS in env/config examples
2026-05-22 17:57:41 +02:00
Linus Rath
c46de636e0
fix: keep a gutter on bare-HTML emails on mobile
2026-05-22 17:47:24 +02:00
Linus Rath
63f2169ae7
fix: add OAUTH_ALLOW_PRIVATE_ENDPOINTS for split-DNS setups
2026-05-22 17:22:14 +02:00
Linus Rath
e843ef0ebb
fix: convert recurrenceRules to singular in batch create
2026-05-22 17:00:53 +02:00
Linus Rath
4b463f9691
fix: prefix hand-written URLs with basePath for subpath deployments
2026-05-22 16:38:55 +02:00
Linus Rath
58e4a3d117
feat: add post-export action setting (keep/archive/trash)
2026-05-22 15:36:15 +02:00
Linus Rath
e3f6ae874d
feat: add settings template for multi-email .zip filename
2026-05-22 15:30:15 +02:00
Linus Rath
52f5a5b42c
feat: support importing emails from .zip archives
2026-05-22 15:22:33 +02:00
Linus Rath
e7bded82fb
i18n: add missing translation keys across 16 locales
2026-05-22 15:09:51 +02:00
Linus Rath
3ac14ecf38
feat: add filename transform settings
2026-05-22 14:57:25 +02:00
Linus Rath
0dca019fe5
fix: stop URL-encoding drag-out filenames and preserve Unicode letters
2026-05-22 14:49:17 +02:00
Linus Rath
ca0d6805cf
feat: add Downloads settings tab with template editor for .eml and attachment filenames
2026-05-22 14:46:25 +02:00
Linus Rath
8bcb487442
feat: name dragged/exported .eml files as "date (from-to) subject" with ASCII-only chars
2026-05-22 14:28:36 +02:00
Linus Rath
0245ec67e1
feat: enhance email filename generation and sanitization for drag-and-drop functionality
2026-05-22 14:25:30 +02:00
Linus Rath
8810a63262
feat: drag emails out to file explorer as .eml
2026-05-22 14:04:52 +02:00
Linus Rath
d3778e6521
fix: handle malformed event dates in calendar route #316
2026-05-22 14:04:02 +02:00
Linus Rath
1fc6185002
chore: update version to 1.7.1
2026-05-22 12:22:03 +02:00
Linus Rath
4269d0589c
feat: collapse empty viewer pane and hide placeholder in Pro mode
2026-05-22 12:19:34 +02:00
Linus Rath
2b1b06abd6
fix: collapse empty viewer pane so mail list fills the space
2026-05-22 12:16:49 +02:00