Commit Graph
2564 Commits
Author SHA1 Message Date
Linus Rath 6975f96a4b Merge branch 'feat/desktop-offline' into feat/do-ux-p2-mail-fix
# Conflicts:
#	components/email/email-viewer.tsx
#	components/email/thread-conversation-view.tsx
#	components/mail/mail-app.tsx
#	components/ui/toast.tsx
#	lib/keyboard-shortcuts/mail.ts
#	lib/window-controls-overlay.ts
2026-11-04 13:37:49 +01:00
Linus Rath 0f2fa7bafe Merge branch 'feat/do-ux-p2-compose-fix' into feat/desktop-offline 2026-11-04 13:28:56 +01:00
Linus Rath 816e4dc24e fix: measure the window controls again after a resize, so the desktop toolbar keeps its buttons at 800 px 2026-11-04 13:22:00 +01:00
Linus Rath 6ec867b4e0 fix: count a pop-out's undo send from the delay the user picked 2026-11-04 13:16:44 +01:00
Linus Rath 063d9c9c47 fix: drop the scheduled mark from a reply in the conversation once it has gone out 2026-11-04 13:10:38 +01:00
Linus Rath 0b16295b45 Merge branch 'feat/desktop-offline' into feat/do-ux-p2-desktop-fix 2026-11-04 13:07:35 +01:00
Linus Rath 19034489a6 Merge branch 'feat/desktop-offline' into feat/do-ux-p2-mail-fix 2026-11-04 12:57:11 +01:00
Linus Rath c657c4c5ba fix: keep unfolded messages readable when the conversation is read again after a send 2026-11-04 12:55:41 +01:00
Linus Rath 07b6cae9e8 fix: call the unread count the taskbar icon's in the desktop app, and write "Not sent:" with a colon 2026-11-04 12:50:52 +01:00
Linus Rath 7186f89de7 test: check the desktop menus get File > Unlock in the app's language 2026-11-04 12:44:04 +01:00
Linus Rath b7686552a3 fix: translate File > Unlock in the desktop app's menus 2026-11-04 12:43:18 +01:00
Linus Rath 98f814fced fix: open a mail link from another program from the default account with no question, and drop "protocol link" from the account picker 2026-11-04 12:42:30 +01:00
Linus Rath efd5b70d53 Merge branch 'feat/desktop-offline' into feat/do-ux-p2-compose-fix 2026-11-04 12:41:13 +01:00
Linus Rath 1417c38a20 Merge branch 'feat/do-ux-p2-compose-send2' into feat/do-ux-p2-compose-fix 2026-11-04 12:41:03 +01:00
Linus Rath 358ba58b39 Merge branch 'feat/do-ux-p2-compose-drafts' into feat/do-ux-p2-compose-fix 2026-11-04 12:40:56 +01:00
Linus Rath 90e959a092 fix: show a sent reply in the open conversation at once, keep it out of Sent and Scheduled during Undo, and bring an undone reply back where it was written 2026-11-04 12:35:50 +01:00
Linus Rath d03d4a0b78 fix: show whole rows of attachments and keep uploading files in their place
The attachment order test now expects uploading files where they were
added: moved to the front, a big upload jumped out of sight once done.
2026-11-04 12:33:28 +01:00
Linus Rath 03ea1ab1aa fix: open files sent from Explorer's Send to and Open with in a compose window, leaving the main window where it is 2026-11-04 12:32:54 +01:00
Linus Rath df62335545 feat: name the desktop app's windows in the Window menu by folder and account, subject or New message 2026-11-04 12:25:33 +01:00
Linus Rath 801aa51b24 fix: discard a draft with the bin at once and offer Undo
The bin no longer asks "Discard draft?". The discard tests now expect no
question: the first one checks the late delete and the Undo instead of
the dialog, and the upload test that cancelled the question is gone,
since there is no question to cancel.
2026-11-04 12:20:42 +01:00
Linus Rath 5e34dc59ab fix: name keys in the app's language in menus, hints and the shortcut help (Strg, Umschalt, Entf in German) 2026-11-04 12:09:08 +01:00
Linus Rath a2edb10e93 docs: list Ctrl+F for Forward in the desktop app's shortcut help 2026-11-04 12:04:15 +01:00
Linus Rath 3be99a4bf7 fix: count an event's length on its own clock across a daylight-saving switch 2026-11-04 12:01:27 +01:00
Linus Rath e93e0419b8 Merge branch 'feat/do-ux-p2-mail-desk' into feat/do-ux-p2-mail-fix 2026-11-04 11:58:31 +01:00
Linus Rath 712236867e Merge branch 'feat/do-ux-p2-mail-folders' into feat/do-ux-p2-mail-fix
# Conflicts:
#	components/email/email-viewer.tsx
2026-11-04 11:57:23 +01:00
Linus Rath e9e5a43391 fix: say when a message needs a connection in a browser that keeps no mail offline 2026-11-04 11:51:47 +01:00
Linus Rath e7cef5ba1c feat: open a draft in the composer on click, and Reply resumes the reply already drafted 2026-11-04 11:44:53 +01:00
Linus Rath 5f0ad627f5 fix: drop a send from the Scheduled count once a pop-out's undo time is over 2026-11-04 11:44:22 +01:00
Linus Rath c2f80e2d29 fix: count every account's unread mail in the rail's Mail badge and the tab title, as the favicon does 2026-11-04 11:42:22 +01:00
Linus Rath 5f450c6945 fix: keep the work or home mark of a second address in Google's older contacts CSV 2026-11-04 11:40:09 +01:00
Linus Rath cbb42c1f47 fix: count the undo send toast down and say Sent with View when undo ends
The undo send test allowed the toast at most the undo time; it now stays one second longer, since it turns into "Sent" when Undo ends instead of going away.
2026-11-04 11:34:41 +01:00
Linus Rath 1ccbddad50 fix: list folders in Move menus in the sidebar's order and leave out Sent
The Move list tests no longer expect Sent as a target or in the recent
folders, and the target count drops by one with it.
2026-11-04 11:33:53 +01:00
Linus Rath 9ae258cc74 fix: count conversations in batch toasts and say "Archived" after archiving in a message window
The moved-undo and popout-host tests expected "Email archived" from a
message window; the main window says "Archived", and now so does the
window.
2026-11-04 11:32:03 +01:00
Linus Rath 0a09fec123 fix: offer Empty Trash and Empty Spam only there, with the message count, and drop folder actions that can't apply
The folder menu tests no longer expect "Empty folder" on a folder of
your own: emptying is offered on Trash and Spam only now. The Mountain
View list test expects the entry to read "Empty Trash".
2026-11-04 11:30:11 +01:00
Linus Rath 4e662d8a60 fix: give "Show the app" a key the composer doesn't use, and refuse the app's own keys for global shortcuts 2026-11-04 11:29:34 +01:00
Linus Rath b17f36d7ba fix: show the tray's next event in the app's time format 2026-11-04 11:26:58 +01:00
Linus Rath 814945a445 fix: say Restore and Delete forever in Trash and stop offering Report spam there
The reader toolbar tests now find the quick reply box by either
placeholder: since the box names its recipients ("quick_reply_to"), the
old placeholder assertion failed and the Spam test passed vacuously.
2026-11-04 11:19:45 +01:00
Linus Rath 3f4a1365f8 fix: keep the window's buttons clear of the app's after a maximise, restore, snap or resize 2026-11-04 11:11:36 +01:00
Linus Rath a415db9bac Merge branch 'feat/desktop-offline' into feat/do-ux-pim-fixes
# Conflicts:
#	stores/settings-store.ts
2026-11-04 11:10:15 +01:00
Linus Rath b8e9d76f0e Merge branch 'feat/do-ux-pim-menu' into feat/do-ux-pim-fixes 2026-11-04 11:09:47 +01:00
Linus Rath c08e9e56fb Merge branch 'feat/do-ux-pim-files' into feat/do-ux-pim-fixes 2026-11-04 11:09:45 +01:00
Linus Rath 71abb5216f Merge branch 'feat/do-ux-pim-cimport' into feat/do-ux-pim-fixes
# Conflicts:
#	components/contacts/contact-list.tsx
#	components/contacts/contacts-app.tsx
2026-11-04 11:09:40 +01:00
Linus Rath d59a896558 fix: show the same Reply all and Delete keys in tooltips, menus and help
The desktop shortcut test expected the help's old "R / a" for Reply
all; it now lists "Shift + R", the key the menus show.
2026-11-04 11:09:29 +01:00
Linus Rath 2cb70d475e Merge branch 'feat/do-ux-pim-contact' into feat/do-ux-pim-fixes 2026-11-04 11:09:24 +01:00
Linus Rath e25d3e1e56 fix: keep a contact's address as stored when other fields change, and lay addresses out by country 2026-11-04 11:06:40 +01:00
Linus Rath 811212a944 fix: show the date for mail older than six days instead of a weekday that reads as today 2026-11-04 11:03:21 +01:00
Linus Rath b04292ff4d feat: merge duplicate contacts and list possible duplicates
The contact menus offered "Duplicate", which made more copies. They now
offer "Merge with…", the selection bar has "Merge…" for two or more
contacts, and a "Possible duplicates (n)" line over the list opens a view
that groups cards with the same name, email address or phone. The test
that expected "Duplicate" in both menus now expects "Merge with…", and
the test for a failed duplicate became tests for merging.
2026-11-04 11:02:52 +01:00
Linus Rath e5dc1dd247 feat: ask Replace, Keep both or Skip when an upload's name exists in Files
An upload over a name that is taken in the target folder used to add
"name (1)" without a word. Every upload path (picker, drag and drop, the
drop overlay, folder upload) now asks per name, with "Do this for all n
conflicts" when there are several:
- Replace gives the existing node the new blob, so it keeps its id,
  shares and links; for a folder it merges into the existing one and
  replaces files of the same name.
- Keep both numbers the new one, as before.
- Skip leaves it out; Cancel stops the whole upload.

Also in Files:
- A file with no preview and no office editor opens a pane with its
  icon, size and Download instead of downloading at once, and in the
  desktop app also Open in default app (the attachment Edit path). The
  item menu gets Open for such files, and Open in default app in the
  desktop app.
- Enter opens the row Tab put the focus on.
- After sharing with someone new, a toast offers Send a message, which
  opens the composer to them with a link to the file.
- The empty folder's buttons read Upload files... and New folder..., as
  the menus do.
2026-11-04 11:01:25 +01:00
Linus Rath 0c022459d2 feat: import contacts from Outlook and Google CSV files into the address book you choose 2026-11-04 10:57:56 +01:00
Linus Rath 409c7110c0 feat: mark unanswered invitations in the calendar grid and answer them from it 2026-11-04 10:57:13 +01:00