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