Linus Rath
2e6ca6eab8
Merge remote-tracking branch 'origin/main' into feat/desktop-offline
2026-11-04 16:36:05 +01:00
Linus Rath
455ef424fa
Merge branch 'feat/desktop-offline' into feat/do-ci-fix
2026-11-04 16:16:33 +01:00
Linus Rath
892b70596d
Merge branch 'feat/desktop-offline' into feat/do-ci-fix
2026-11-04 16:09:45 +01:00
Linus Rath
14f388ee8a
Merge branch 'feat/desktop-offline' into feat/do-links-verify
2026-11-04 15:59:40 +01:00
Linus Rath
d6d8f638f8
fix: open mail links that carry a stray percent sign
2026-11-04 15:59:22 +01:00
Linus Rath
3b9fed9b65
fix: load plugins when the webmail is framed by an allowed portal #1533
2026-11-04 15:33:53 +01:00
Linus Rath
48d615ee15
Merge remote-tracking branch 'origin/main' into feat/do-ci-fix
2026-11-04 15:22:18 +01:00
Linus Rath
ed83a13ac2
test: let each device wipe test's wipe finish before the next test starts, so a late one can't restart, report or reload there
2026-11-04 15:19:14 +01:00
Linus Rath
c87c11734b
feat: add a setting to keep the account switcher at the top of the sidebar, on by default
2026-11-04 15:19:11 +01:00
Linus Rath
d3168b33c1
fix: leave a file's preview open while its import opens, so the move to contacts or calendar holds
2026-11-04 15:19:08 +01:00
Linus Rath
22edfecddf
fix: go to the contacts or calendar import from a file's preview instead of staying in Files
2026-11-04 15:05:01 +01:00
Linus Rath
e5568ba23b
Merge branch 'feat/desktop-offline' into feat/do-ux-p2-pim-fix
2026-11-04 14:07:47 +01:00
Linus Rath
74ce0d2587
Merge branch 'feat/do-ux-p2-pim-cm' into feat/do-ux-p2-pim-fix
...
# Conflicts:
# components/files/files-sidebar.tsx
2026-11-04 14:07:43 +01:00
Linus Rath
6a88bb90fa
Merge branch 'feat/do-ux-p2-pim-files' into feat/do-ux-p2-pim-fix
2026-11-04 14:07:26 +01:00
Linus Rath
cd2c017918
Merge branch 'feat/do-ux-p2-pim-calx' into feat/do-ux-p2-pim-fix
2026-11-04 14:07:24 +01:00
Linus Rath
9d186e4af5
fix: say that a series invitation repeats, answer the whole series, and name the weeks declined on their own
2026-11-04 14:03:08 +01:00
Linus Rath
77986dddc9
fix: mark a repeated address within an imported file as a duplicate, and end the contact import with a toast that shows them
2026-11-04 13:59:29 +01:00
Linus Rath
a39aacc444
fix: take dropped files whose items carry no file system entry
2026-11-04 13:58:34 +01:00
Linus Rath
179d3994bb
feat: refresh Calendar, Contacts and Files with F9 in the desktop app, and move through the calendar from Go
2026-11-04 13:57:46 +01:00
Linus Rath
546b76b47e
feat: open saved messages from Files, offer their imports there, take drops on a folder row, and step through files without a preview
2026-11-04 13:56:15 +01:00
Linus Rath
81f8bf6d60
feat: save a document edited in its program back into Files, and ask Keep both or Replace when it changed there meanwhile
2026-11-04 13:56:15 +01:00
Linus Rath
b70ab8a50c
feat: upload files dropped on the Files screen without asking, and add several .ics or .vcf in one import
2026-11-04 13:56:09 +01:00
Linus Rath
109866dd4c
fix: tell two accounts' calendars apart, keep events out of task lists, and start new events in the account on screen
...
Calendar, task list and address book choosers are grouped under each
account's address, the sidebar and Settings head each account by its
address, and a second account's default calendar gets a colour of its
own. Events can no longer go into a task list from the editor, quick
create or import; the task editor's "List" offers task lists only. New
events preselect the active account's last-used or default calendar,
and the event menu has "Copy to <address>" for the other account.
Two task editor tests change their fixtures and label: the select now
lists task lists only and is labelled "List", so plain calendars no
longer appear in it (pim-p2-13).
2026-11-04 13:48:47 +01:00
Linus Rath
0bd55c0f80
Merge branch 'feat/desktop-offline' into feat/do-ux-p2-mail-fix
2026-11-04 13:47:12 +01:00
Linus Rath
1b7b689662
Merge branch 'feat/desktop-offline' into feat/do-ux-p2-mail-fix
...
# Conflicts:
# components/ui/first-start-notice.tsx
2026-11-04 13:46:47 +01:00
Linus Rath
5bb9887961
test: load the OS command handler once before the launch tests, so a busy machine doesn't time the first one out
2026-11-04 13:43:27 +01:00
Linus Rath
b588954ea4
feat: pick an event's time zone by city with search, and open Duplicate as an unsaved copy at the same time
...
The editor's time zone test now picks a zone through the searchable picker instead of a select's change event, since the select is gone.
2026-11-04 13:42:36 +01:00
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
09335c76c5
Merge branch 'feat/do-ux-p2-settings-fix' into feat/desktop-offline
...
# Conflicts:
# components/settings/__tests__/notification-settings.test.tsx
2026-11-04 13:32:16 +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
49286649dd
Merge branch 'feat/do-ux-p2-settings-fix' into feat/do-ux-p2-pim-fix
...
# Conflicts:
# components/settings/__tests__/notification-settings.test.tsx
2026-11-04 13:27:06 +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
b1ae1cc8c5
Merge branch 'feat/desktop-offline' into feat/do-ux-p2-settings-fix
...
# Conflicts:
# components/calendar/event-modal.tsx
# components/calendar/task-list-view.tsx
# components/calendar/task-modal.tsx
# components/email/calendar-invitation-banner.tsx
2026-11-04 12:56:40 +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
60c7efad10
fix: call the default calendar and address book "Calendar" and "Contacts" everywhere, as Settings does
...
Stalwart names them "Stalwart Calendar (<address>)" and "Stalwart
Address Book (<address>)". Settings already showed plain names; the
sidebars, pickers, the event and task editors, invitations, print and
confirm texts now use the same helper. A colleague's shared default keeps
whose it is. Two test fixtures used Stalwart's default name for a long or
own book name and now use a name the user chose, since a default name is
no longer shown as is.
2026-11-04 12:51:03 +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
badbd616df
Merge branch 'feat/do-ux-p2-settings-search' into feat/do-ux-p2-settings-fix
2026-11-04 12:39:59 +01:00
Linus Rath
641489775b
Merge branch 'feat/do-ux-p2-settings-ident' into feat/do-ux-p2-settings-fix
2026-11-04 12:39:57 +01:00
Linus Rath
01f2860613
feat: edit each address's signature right on the Composing settings page
2026-11-04 12:39:11 +01:00
Linus Rath
3a2be9a7d4
fix: edit the name recipients see on the Account page and stop cutting account addresses
...
Settings > Account had a "Display name" that edited Stalwart's account
description, while mail went out with the identity's name, so changing
it changed nothing people saw. The page now shows "Your name", the
primary address's name, and saves it to that identity. The account
switcher and avatars take the same name; the principal description is
only used for an account without an identity name. The address editor
calls the field "Your name" too, and "identities" are "addresses" in
the Account section and its dialog, said once instead of twice.
Logged-in accounts show the server only for an account in trouble or
one sharing its address with another, with no drag hint or arrows for a
single account. The switcher wraps addresses instead of cutting them and
has no remove button per row; an account you're not in is removed from
Settings > Account.
Changed tests: auth-store-display-name now expects the identity name to
win over the principal; account-switcher-remove expects no remove
button on the rows; settings-editors-unsaved uses the renamed "Add
address" button and the "Your name" label, which has no placeholder.
2026-11-04 12:38:38 +01:00