Linus Rath
9639a6bb75
feat: expand calendar invitation banner on row click
2026-05-06 00:51:16 +02:00
Linus Rath
904a62ce79
feat: make calendar invitation banner collapsible
2026-05-06 00:49:09 +02:00
Linus Rath
2903e56cf6
fix: align calendar invitation icon with sender avatar column
2026-05-06 00:45:37 +02:00
Linus Rath
b5e0189938
fix: adjust toast item border radius and progress bar styles
2026-05-05 21:57:56 +02:00
Linus Rath
a44bd7c3e6
fix: add missing body type assertion in createPluginAPI fetch options
2026-05-05 21:52:58 +02:00
Linus Rath
0885d3c13e
feat: http:fetch permission + httpOrigins manifest field
2026-05-05 21:50:04 +02:00
Linus Rath
ef8eb1d73b
fix: read activeAccountId from authStore in account selectors
2026-05-05 21:20:45 +02:00
Linus Rath
9f67bc078a
feat: ingest icon/banner/screenshots from source repo
2026-05-05 21:12:23 +02:00
Linus Rath
da411af6d3
feat: project EmailReadView for email-banner slot, expose auth results
2026-05-05 20:31:11 +02:00
Linus Rath
265908b05b
fix: resolve PLUGIN_DEV_DIR plugins in admin config route
2026-05-05 20:17:45 +02:00
Linus Rath
2a769c2b0a
feat: run onBeforeEmailSend hook before send, expose fromEmail on OutgoingEmail
2026-05-05 20:04:00 +02:00
Linus Rath
28054c81ea
fix: inline plugin configure panel to avoid dev-mode hang
2026-05-05 19:04:29 +02:00
Linus Rath
e7264f521c
fix: collapse admin panel into single tabbed page
2026-05-05 18:50:57 +02:00
Linus Rath
1b0ca8967e
feat: bundle plugin src/ on demand via esbuild
2026-05-05 18:35:22 +02:00
Linus Rath
3e336d459c
feat: plugin hot-reload + dev-folder loading
2026-05-05 18:05:17 +02:00
Linus Rath
94f55afd1f
fix: remove fly-in animation from context menu submenus
2026-05-05 17:21:46 +02:00
Linus Rath
7b058ed0ac
fix: calendar invitation picker clipping #250
2026-05-05 17:17:01 +02:00
Luis Felipe Marzagao and Linus Rath
853b0eb855
fix: add missing Czech flag icon
2026-05-05 08:59:28 +02:00
Linus Rath
41a458d872
fix: add Grafana badge to README for dashboard access
2026-05-04 23:56:55 +02:00
Linus Rath
d1c5dba7d7
chore: update version to 1.6.1
1.6.1
2026-05-04 12:34:53 +02:00
Linus Rath
8c50abe221
fix: synchronize mobile submenu view with browser history for better navigation
2026-05-04 12:31:51 +02:00
Linus Rath
07367a8a5d
fix: update email viewer styles to improve overflow handling
2026-05-04 12:27:44 +02:00
Linus Rath
1a50788c91
fix: ensure cookieSlot consistency during account updates in auth store
2026-05-04 12:09:58 +02:00
Linus Rath
0e06bfe273
Merge branch 'main' of https://github.com/bulwarkmail/webmail
2026-05-04 11:25:49 +02:00
Linus Rath
f68e41d81a
fix: enhance sharing functionality by renaming state
2026-05-04 11:24:05 +02:00
Maxwell and Linus Rath
8b164c556e
fix: thread per-account cookie slot through OAuth flows
...
The multi-account refresh-token cookie slot wiring was half-implemented:
every account's refresh token ended up on slot 0, so "+ Add Account"
silently clobbered the previous account's `jmap_rt` cookie. On page
refresh, only the most-recently-added account had a working refresh
token; the others bounced to login.
Three coordinated changes:
1. `app/[locale]/login/page.tsx` (handleOAuthLogin): write the next-free
cookie slot to `sessionStorage['oauth_cookie_slot']` before redirecting
to the IdP. `loginWithOAuth` already reads this key but it was never
written, so it always defaulted to 0.
2. `stores/auth-store.ts` (loginWithOAuth): distinguish "no value set"
(`rawSlot === null`) from "value is 0". Previously
`parseInt(getItem(...) || '0')` collapsed both cases, making the
`getNextCookieSlot()` fallback unreachable.
3. `stores/auth-store.ts` (loginWithServerSso) +
`app/api/auth/sso/complete/route.ts`: pass the slot through the body of
the POST and use it for `refreshTokenCookieName(slot)`. Same pattern as
the existing `/api/auth/token POST` that already accepts a slot. The
server defaults to 0 for back-compat with any caller that omits it.
After the fix, signing in with multiple accounts produces distinct
`jmap_rt`, `jmap_rt_1`, `jmap_rt_2`, ... cookies (matching the cookieSlot
field in account-store) and all accounts survive a page refresh.
Repro before the fix:
- Sign in with one account, refresh — works.
- Click "+ Add Account", sign in with a second account, refresh — second
account vanishes from the dropdown; switching to the first account in
the dropdown still shows the second account's identity in the From box.
2026-05-04 11:22:45 +02:00
Linus Rath
2e1f53c899
Merge branch 'main' of https://github.com/bulwarkmail/webmail
2026-05-03 20:07:20 +02:00
Linus Rath
a6d2efaf74
feat: sanitize identity display name to prevent invalid From headers
2026-05-03 20:06:41 +02:00
Luis Felipe Marzagao and Linus Rath
01cd9644ed
i18n: update mailbox context menu across 12 locales
2026-05-03 11:01:39 +02:00
Linus Rath
1521826d37
feat: add functionality to automatically add recipients to trusted senders when replying
2026-05-02 23:50:50 +02:00
Linus Rath
0d218d0d2a
fix: square the colored left marker on calendar events
2026-05-02 23:41:08 +02:00
Linus Rath
9777dd655c
feat: add share indicators for calendars and contacts, update JMAP capabilities #244
2026-05-02 23:29:21 +02:00
Linus Rath
f970fd1822
feat: add plugin hooks for compose, attachments, search, lifecycle, and routing
2026-05-02 21:27:56 +02:00
Linus Rath
5e096240b3
feat: refresh update status on every dev reload
2026-05-02 13:23:58 +02:00
Linus Rath
bc97a1ac10
feat: make update notice non-dismissible
2026-05-02 13:07:34 +02:00
Linus Rath
4594fb2572
revert: restore VERSION to correct value
2026-05-02 01:59:27 +02:00
Linus Rath
5319562c94
feat: add update-available detection
2026-05-02 01:58:30 +02:00
Linus Rath
599fa66822
fix: show git commit in About instead of "unknown"
2026-05-02 00:28:08 +02:00
Linus Rath
8041700668
chore: update version to 1.6.0
1.6.0
2026-05-01 22:02:57 +02:00
Linus Rath
bade68a8b8
i18n: add missing email viewer detail and authentication translations
2026-05-01 22:02:14 +02:00
Linus Rath
4be7176802
chore: update version to 1.6.0
2026-05-01 21:56:53 +02:00
Linus Rath
8813533958
fix: respect per-email dark mode toggle when always-light setting is on
2026-05-01 21:42:02 +02:00
Linus Rath
affa239d75
Merge branch 'main' of https://github.com/bulwarkmail/webmail
2026-05-01 21:35:53 +02:00
Linus Rath
5d292fa43f
fix: scroll apps list in navigation rail to prevent overflow
2026-05-01 21:35:29 +02:00
Linus Rath
878df6bb49
refactor: enhance path rendering in mailbox context menu
2026-05-01 21:26:03 +02:00
Linus Rath
607a9584fd
refactor: implement path shortening for mailbox context menu
2026-05-01 21:25:31 +02:00
Linus Rath
b8e2bfd793
fix: show full path in mailbox context menu header
2026-05-01 21:15:47 +02:00
Linus Rath
4ad6d37877
fix: clamp context submenu inside viewport
2026-05-01 21:03:54 +02:00
Linus Rath
d7c29b7bec
refactor: rework mobile mail viewer toolbar
2026-05-01 21:00:34 +02:00
Luis Felipe Marzagao and Linus Rath
b86bc541ab
i18n: add missing keys accross 14 locales
2026-05-01 20:37:51 +02:00