Linus Rath
aaf15488d5
fix: address the user formally in the German account list restore prompt like the rest of the backup settings
2026-10-26 19:26:27 +01:00
Linus Rath
4bfaf8abce
Merge pull request #1363 from lucamzanon/feat/account-archive-restore-prompt
2026-10-26 19:26:13 +01:00
Linus Rath
e99cce05fe
Merge pull request #1370 from maxhaomh/feat/disable-quick-reply
2026-10-26 19:24:49 +01:00
Max Hao
7216089629
feat: add quick reply feature with toggle in settings and tests
2026-10-26 11:40:47 -04:00
Linus Rath
92fe2fd1b1
fix: translate the note that a discarded draft of a signed-out account was kept
2026-10-26 16:11:56 +01:00
Linus Rath
34ad859ce4
fix: refuse Undo and Send now for a delayed send of a signed-out account instead of acting through the active one
2026-10-26 16:11:53 +01:00
Linus Rath
54b197080c
fix: keep a discarded draft of a signed-out account instead of deleting another account's message with its id
2026-10-26 16:11:52 +01:00
Linus Rath
f0392a6705
fix: check a meeting reply's sender against the attendee who answers, not the organizer
2026-10-26 15:15:58 +01:00
Linus Rath
82de3c8df1
fix: translate the strings Estonian was missing after the Stalwart 1.0 merge
2026-10-26 12:25:31 +01:00
lucamzanon
2f8c6e13bf
feat: offer to restore the saved account list on a new device
...
Part 3 of 3 of the account archive (#1198 ). Signing in on a browser that
knows no other account, with a list saved for that account, opens a dialog
asking for the backup password and restores the list as Settings does.
Not now hides the offer for that account in this browser; the restore
stays in Settings.
2026-10-26 12:23:18 +01:00
Linus Rath
cf2c27157d
Merge branch 'main' into feat/stalwart-1.0
...
# Conflicts:
# components/contacts/contacts-app.tsx
# components/email/__tests__/composer-discard.test.tsx
# components/email/calendar-invitation-banner.tsx
# components/email/email-composer.tsx
# components/mail/mail-app.tsx
# components/pro/pro-compose-tab-body.tsx
# components/pro/pro-email-tab-body.tsx
# components/ui/__tests__/avatar.test.tsx
# components/ui/avatar.tsx
# hooks/use-mailbox-drop.ts
# lib/__tests__/calendar-alerts.test.ts
# lib/__tests__/jmap-calendar-tasks.test.ts
# lib/__tests__/jmap-send-threading.test.ts
# lib/demo/demo-client.ts
# lib/demo/fixtures/calendars.ts
# lib/jmap/client-interface.ts
# lib/jmap/client.ts
# lib/web-push.ts
# stores/__tests__/contact-store.test.ts
# stores/__tests__/email-store-thread-key.test.ts
# stores/calendar-store.ts
# stores/contact-store.ts
# stores/email-store.ts
2026-10-26 10:14:12 +01:00
Linus Rath
f7a4087c91
feat: split the Mountain View inbox into Unread and Everything else, as Gmail's unread first
2026-10-25 13:13:46 +01:00
Linus Rath
10caa9e2f3
Merge pull request #1316 from ghozty/feat/app-name-strings
...
feat: name the app with the configured APP_NAME in user-facing strings
2026-10-24 17:54:49 +02:00
ghozty and Claude Opus 5.5
30f51e5ca4
feat: name the app with the configured APP_NAME in user-facing strings
...
Some user-facing strings still said "Bulwark" on a deployment with its own
APP_NAME: Settings > General > Default apps (protocol handlers), the "Open
Bulwark" notification, the rate-limit banner and toast, the plugin connect
dialog, one plugin permission text and the connector page.
These strings now take an {appName} placeholder, filled by productName():
the configured APP_NAME, or "Bulwark" when it is unset or the default
"Webmail" (the same rule as the TOTP issuer and the About card, #1160 ).
A stock install reads as before.
The settings search (the settings page and api.app.searchSettings) indexes
these texts with the name filled in, so "bulwark" or the configured name
finds Default apps and no result carries the raw placeholder.
Locales: the 13 keys in every locale that has "Bulwark" in them. Languages
that inflect the name (cs, et, hu, ko, ro, sk, tr) use a neutral form such
as "{appName} uygulamasında" instead of a declined "Bulwark'ta"; a native
check of those is welcome.
Not changed on purpose: the mobile app, push relay, Lite, demo and admin
texts, which speak about Bulwark itself.
Closes #1314
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
2026-10-22 04:14:54 +03:00
Vlad
d7d9c0f193
fix(i18n): correct Ukrainian "forward" and "move to" translations
...
The "forward" email action was mistranslated as "вперед" (the
directional adverb "forward/ahead") instead of "Переслати" (the verb
"to forward [a message]") across context_menu, email_viewer,
email_composer, and shortcuts. Also "move_to" read as "Перейти до..."
("navigate to...") instead of "Перемістити до..." ("move to..."),
which described the wrong action for moving an email to a folder.
2026-10-21 22:11:01 +03:00
Linus Rath
7fa207e8e3
feat: translate the Cut and Copy entries of the selection menus into every language
2026-10-20 17:21:13 +02:00
Linus Rath
8deb887e95
feat: let plugins see and act on text selected in a message, with a right-click menu and the side panel's selection
2026-10-20 17:21:12 +02:00
Linus Rath
00142540f6
feat: let plugins add entries to the right-click menu on selected text in the composer
2026-10-20 17:21:12 +02:00
dealerweb
3d59852ecc
fix: translate the German dialog that hands a sign-in to the mobile app
2026-10-20 10:49:22 +02:00
Linus Rath
31f4a4b4b3
feat: show one row of themes with a show all button
2026-10-19 20:49:24 +02:00
Linus Rath
6a59faf127
feat: add numeric date, day, month and year template placeholders #1284
2026-10-19 18:41:44 +02:00
Linus Rath
7ee0eb346b
chore: drop the strings of the retired settings tabs from every locale
2026-10-19 18:20:08 +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
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
Linus Rath
391ed6c018
Merge branch 'fix/security-audit-2026-10'
2026-10-19 12:58:50 +02:00
dealerweb
9770b565e5
fix: translate the German strings that still showed in English
2026-10-19 10:31:14 +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
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
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
ad9837d2d2
fix: add the Estonian text for the tag rename warning
2026-10-18 15:05:08 +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
b23735fb6b
feat: translate the strings added since the Estonian locale was made
2026-10-18 14:41:32 +02:00
Linus Rath
dca10ba9aa
feat: translate the company directory into Estonian
2026-10-18 14:39:59 +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 and French-Asgeir
7163a5dcc1
fix: translate contact field types and more French strings
...
Co-authored-by: French-Asgeir <109287366+French-Asgeir@users.noreply.github.com >
2026-10-18 14:19:07 +02:00
Linus Rath
107d731af7
feat: remove a message from just the open folder when it is in several #615
2026-10-17 19:18:25 +02:00
Linus Rath
1ad1e31781
feat: set message priority in the composer #970
2026-10-17 19:18:23 +02:00
Linus Rath
edf675b2f4
feat: list your own folders in a separate section of the sidebar #1205
2026-10-17 19:18:22 +02:00
Linus Rath
03031fcb13
feat: jump to the next unread message with n #514
2026-10-17 19:18:20 +02:00