Commit Graph
2458 Commits
Author SHA1 Message Date
Linus Rath ceaceb7f2a Merge branch 'feat/desktop-offline' into feat/do-ux-compose-fixes
# Conflicts:
#	components/email/email-composer.tsx
#	components/email/email-viewer.tsx
#	locales/ar/common.json
#	locales/ca/common.json
#	locales/cs/common.json
#	locales/da/common.json
#	locales/de/common.json
#	locales/en/common.json
#	locales/es/common.json
#	locales/et/common.json
#	locales/fa/common.json
#	locales/fr/common.json
#	locales/he/common.json
#	locales/hu/common.json
#	locales/it/common.json
#	locales/ja/common.json
#	locales/ko/common.json
#	locales/lv/common.json
#	locales/mn/common.json
#	locales/nb/common.json
#	locales/nl/common.json
#	locales/pl/common.json
#	locales/pt/common.json
#	locales/ro/common.json
#	locales/ru/common.json
#	locales/sk/common.json
#	locales/th/common.json
#	locales/tr/common.json
#	locales/uk/common.json
#	locales/vi/common.json
#	locales/zh-TW/common.json
#	locales/zh/common.json
2026-11-04 09:20:50 +01:00
Linus Rath a0dca05585 test: keep single letters out of the composer's shortcut list 2026-11-04 09:13:46 +01:00
Linus Rath 2ca4946c6e feat: add Ctrl+K for a link, Ctrl+S to save the draft and Ctrl+Shift+C or B for Cc and Bcc in the composer 2026-11-04 09:13:05 +01:00
Linus Rath dfed23e382 fix: keep developer tools off when the forced policy value can't be read 2026-11-04 09:06:38 +01:00
Linus Rath 2b2b7b8298 fix: show every attachment in the composer, with type icons and a total, failed and uploading files first
The attachment list test now expects every chip and a bounded, scrolling row instead of three chips and a +N counter.
2026-11-04 09:01:04 +01:00
Linus Rath 3841bdd630 Merge branch 'feat/do-drop-overlay' into feat/desktop-offline
# Conflicts:
#	desktop-policies/de-DE/Bulwark.adml
#	desktop-policies/en-US/Bulwark.adml
2026-11-04 08:37:26 +01:00
Linus Rath d98132b8e1 fix: close every composer the same way, keeping the draft with Draft saved and Discard
X, Escape, clicking another message and Escape in a pop-out window
now all save the draft and close, with a "Draft saved" toast that has
Discard (with Undo). The Save or discard question shows only when that
save fails. A Reply or Forward closed before the user changed anything
leaves no draft. Undo send being on by default no longer asks "Send
without a delay?" on servers without delayed sending; only a delay the
user picked does.

Changed test assertions: the close-guard, priority, account-switch,
threading, sign-out, mention, draft-attachments, discard-uploads and
save-pending-attachments tests reached saving or discarding through the
Save or discard dialog on close, which now only appears after a failed
save. They now close directly, or use the Discard button, or check the
failed-save question. The send-delay test marks its delay as chosen.
2026-11-04 08:22:56 +01:00
Linus Rath 2f31b435a2 Merge branch 'feat/desktop-offline' into feat/do-menu-fixes
# Conflicts:
#	components/desktop/desktop-host.tsx
2026-11-04 07:57:50 +01:00
Linus Rath de09da137b Merge branch 'feat/do-menu-winctl' into feat/do-menu-fixes 2026-11-04 07:50:16 +01:00
Linus Rath 8570f678e2 Merge branch 'feat/do-ux-compose-windows' into feat/do-ux-compose-fixes
# Conflicts:
#	components/email/email-composer.tsx
2026-11-04 07:42:11 +01:00
Linus Rath 17bf3c4e6f Merge branch 'feat/do-ux-compose-send' into feat/do-ux-compose-fixes 2026-11-04 07:41:26 +01:00
Linus Rath 48df0db1af feat: list To and Cc in the header of a forwarded message 2026-11-04 07:34:29 +01:00
Linus Rath 1c26d9040f Merge branch 'feat/do-ux-desktop-fixes' into feat/desktop-offline 2026-11-04 07:31:33 +01:00
Linus Rath e6f8c7a241 fix: show who a quick reply goes to and offer the full editor by name
The quick reply tests find the box by its new placeholder key, which
names the recipients instead of "Write a quick reply...".
2026-11-04 07:25:05 +01:00
Linus Rath 5fbc9b1f47 feat: open a mail link from another program in a compose window of its own in the desktop app 2026-11-04 07:12:06 +01:00
Linus Rath b8646eefc4 Merge branch 'feat/desktop-offline' into feat/do-menu-fixes 2026-11-04 07:11:07 +01:00
Linus Rath 021712d55e Merge branch 'feat/do-menu-pos' into feat/do-menu-fixes 2026-11-04 07:09:17 +01:00
Linus Rath 2fcb7cd544 fix: print an invitation with its date, time, place and organiser 2026-11-04 07:05:31 +01:00
Linus Rath e29a6553e6 fix: keep notices and the offline bar clear of the window's controls, give each a close, and put a pane's close first where it would sit beside the window's 2026-11-04 07:02:53 +01:00
Linus Rath f8a803ad44 fix: keep the composer's toolbar menus on screen in a short window 2026-11-04 07:00:58 +01:00
Linus Rath e8d8486b85 fix: cut a row's right-click menu to the usual actions, with Restore in Trash and read and unread for mixed selections 2026-11-04 07:00:54 +01:00
Linus Rath 0746679475 feat: reply with Ctrl+R, mark read with Ctrl+Q and search with Ctrl+E in the desktop app, as in Outlook 2026-11-04 07:00:38 +01:00
Linus Rath 5c2d306964 feat: add New event, New task, New contact, Import mail and the composer's Send, Save draft and Attach files to the desktop menus 2026-11-04 06:59:09 +01:00
Linus Rath 0729f05aeb feat: name the account the tray's unread list is from when several are signed in 2026-11-04 06:56:31 +01:00
Linus Rath 13272ad85d fix: move the taskbar flash and quiet hours to Settings > Notifications
The macOS bounce test renders the Notifications part, where the setting now is.
2026-11-04 06:56:28 +01:00
Linus Rath a28617cbbb fix: say a connection is needed only when offline or the server is down, not at a start while online 2026-11-04 06:56:24 +01:00
Linus Rath 781013cc44 feat: close the composer as soon as Send is pressed and show Sending, then Sent with View 2026-11-04 06:41:51 +01:00
Linus Rath 4ec1c128f6 fix: warn about template fill-ins like [Name] before sending
A lone capitalised word in brackets now counts as a fill-in, so two
cases of ordinary text changed: the cross-language case uses lowercase
"[votre] [ваше]", and the broken word-list case uses "[Your name]", so
both still test what they were written for.
2026-11-04 06:36:09 +01:00
Linus Rath 749f2e938e feat: put pictures dropped on an open composer into the message text 2026-11-04 06:32:19 +01:00
Linus Rath 141748e1d6 fix: show first-start notices one at a time above the message list, each with a close button
The dictionary test now reads the notice queue instead of the toasts: the
question is no longer a toast.
2026-11-04 06:29:23 +01:00
Linus Rath 80321e21a2 fix: explain replying from the received address in plain words
The admin-locks test finds the row by its label key, which moved to the
compose_words namespace with the new description.
2026-11-04 06:26:28 +01:00
Linus Rath 461a7daf4f feat: let a composer move to its own window from a browser tab, as in Gmail 2026-11-04 06:24:26 +01:00
Linus Rath 2f46eb6b46 Merge branch 'feat/do-menu-fixes' into feat/do-drop-overlay 2026-11-04 06:20:02 +01:00
Linus Rath a80c44b776 Merge branch 'feat/desktop-offline' into feat/do-drop-overlay 2026-11-04 06:19:39 +01:00
Linus Rath 277e1aa55d Merge branch 'feat/do-menu-altbar' into feat/do-menu-fixes 2026-11-04 06:19:29 +01:00
Linus Rath 5fc87eafbd Merge branch 'feat/do-menu-audit' into feat/do-menu-fixes
# Conflicts:
#	components/email/email-context-menu.tsx
#	components/mail/mail-app.tsx
2026-11-04 06:19:07 +01:00
Linus Rath b425f4b211 feat: turn undo send on by default with 5 seconds
The policy-defaults test now expects the new build default of 5 seconds
for an invalid admin value, and the settings-search tests look for the
row under its new label "Undo send".
2026-11-04 06:18:29 +01:00
Linus Rath 8bcf5248a4 fix: translate Lock now in the desktop File menu 2026-11-04 06:17:12 +01:00
Linus Rath f7c6f6b7b1 Merge branch 'feat/do-menu-overflow' into feat/do-menu-fixes 2026-11-04 06:12:13 +01:00
Linus Rath daf67152eb Merge branch 'feat/do-menu-winctl' into feat/do-menu-fixes 2026-11-04 06:12:10 +01:00
Linus Rath 6efa589448 Merge branch 'feat/do-menu-pos' into feat/do-menu-fixes 2026-11-04 06:12:08 +01:00
Linus Rath adac86f089 Merge branch 'feat/desktop-offline' into feat/do-policy-fixes 2026-11-04 06:00:30 +01:00
Linus Rath 6d3d7707a3 fix: let a page see the forced server it runs on, and only that 2026-11-04 06:00:28 +01:00
Linus Rath 53eb91ab0e fix: keep the message details panel readable in a narrow reader, with addresses, dates and sign-in results that fit 2026-11-04 05:58:47 +01:00
Linus Rath 1cf03ff0e4 feat: add a developer tools switch to the desktop app's troubleshooting settings 2026-11-04 05:38:59 +01:00
Linus Rath 1f4b0669ca feat: ask between a new message and Files for a file opened with the desktop app 2026-11-04 05:38:43 +01:00
Linus Rath e211ae905e feat: offer attach or upload when files are dragged onto any screen
Files dragged into the window from outside now bring up a full-window
overlay with large drop zones: attach to a new message and upload to
Files, with the open composer first, "Upload to <folder>" on the Files
screen, and add to calendar, add to contacts, open or import for .ics,
.vcf and .eml files. At most four zones, the one under the pointer
highlights, Esc or dragging out cancels, a drop beside the zones does
nothing. Drags that start in the app never show it. A file pasted
outside a text field gets the same choices as a keyboard dialog.

The desktop app used to turn any file dropped on the window into a new
draft (lib/desktop/window-files.ts). That handling moved to the
overlay, so the "files on the window" tests in os-window.test.tsx went
with it: the same cases are now in components/file-drop/__tests__.
2026-11-04 05:37:35 +01:00
Linus Rath 4508eddccb fix: keep a tall menu under its button and scroll it, instead of covering the button 2026-11-04 05:35:57 +01:00
Linus Rath e74d2aaa72 fix: keep the app's own buttons out from under the window's controls and move a pane's close away from the window's 2026-11-04 05:27:57 +01:00
Linus Rath 0f3d534246 test: give the app lock's tests time for two PBKDF2 runs on a busy machine 2026-11-04 05:24:11 +01:00