Commit Graph
245 Commits
Author SHA1 Message Date
Linus Rath e654eadd37 Merge branch 'main' into ux/mail3 2026-10-28 11:10:56 +01:00
Linus Rath 8566cf2b29 Merge branch 'ux/calendar3' 2026-10-28 11:06:37 +01:00
Linus Rath 9014dda3cb Merge branch 'ux/contacts-files2' 2026-10-28 11:04:04 +01:00
Linus Rath 87323d4137 fix: keep tab in the week or day in view instead of walking into the hidden days on either side 2026-10-28 10:45:42 +01:00
Linus Rath 2f790a2d75 fix: keep toasts above the Save and Cancel buttons of the contact and group forms 2026-10-28 10:43:55 +01:00
Linus Rath 94029e5aa2 fix: ask before the nav rail or the phone tab bar leaves a contact or group form with changes 2026-10-28 10:43:55 +01:00
Linus Rath 4dc13c229b fix: list a repeating event under its own title in calendar search when one occurrence was renamed 2026-10-28 10:28:13 +01:00
Linus Rath 715c3f03a3 fix: let Enter on the skip link move focus to the message list instead of opening a message 2026-10-28 10:22:00 +01:00
Linus Rath 82aeddfdaa fix: keep hover previews closed while an editor, card or dialog is open and after one closes until the pointer moves 2026-10-28 10:19:02 +01:00
Linus Rath e48a0ed8f6 fix: write event dates in each language's own order on the event card, the event view and the import preview 2026-10-28 10:13:53 +01:00
Linus Rath d5ff1c6727 fix: show the day as a short date in the phone day view's title and put the back arrow in the menu's place so it fits 2026-10-28 10:08:05 +01:00
Linus Rath 2fbfa7a177 fix: give the focus back to the folder or message checkbox after closing a menu opened with Shift+F10 2026-10-28 09:57:32 +01:00
Linus Rath 5f34700553 fix: stop the React warning about isPressed on every Contacts visit 2026-10-28 09:48:43 +01:00
Linus Rath 0cd28097e6 Merge branch 'main' into ux/mail2 2026-10-28 08:16:51 +01:00
Linus Rath ed9fa2de45 feat: offer Undo after a move to another account and in lists that mix accounts, moving the messages back into their folders 2026-10-28 08:06:45 +01:00
Linus Rath f60ddf3f95 fix: give a message the same actions in its row menu, the reader's ⋮ and the phone panel, Print, View source, Export and Pin included, and one menu look for Mail's ⋮, Move, Tag and composer menus 2026-10-28 07:42:24 +01:00
Linus Rath 4b2aba430c fix: let Back close overlays the same way in calendar, contacts and files 2026-10-28 07:32:05 +01:00
Linus Rath 731ec15af4 Merge branch 'main' into ux/calendar2
# Conflicts:
#	hooks/use-close-on-back.ts
2026-10-28 07:21:42 +01:00
Linus Rath d87678a7ba feat: search events from the calendar toolbar, with / and a palette command 2026-10-28 07:17:16 +01:00
Linus Rath 1d5091f68b fix: close the event or task editor on browser back instead of leaving the calendar, asking first when it has changes 2026-10-28 06:39:15 +01:00
Linus Rath 2da1aa48db fix: reach empty week and day slots from the keyboard with one tab stop, arrow keys and Enter or n to create 2026-10-28 06:39:15 +01:00
Linus Rath d2bebc5fa8 Merge branch 'main' into ux/mail 2026-10-28 06:26:31 +01:00
Linus Rath afd5d8263c fix: delete a contact category the same way in Settings and Contacts, with the same Undo toast 2026-10-28 06:16:10 +01:00
Linus Rath 7bfab1cb8a fix: fill the week and day view with the visible hours and mark events that run past them 2026-10-28 06:04:49 +01:00
Linus Rath 65d4a66774 Merge branch 'main' into ux/mail 2026-10-28 05:57:23 +01:00
Linus Rath ee92ccb2c9 Merge branch 'ux/contacts-files' 2026-10-28 05:52:26 +01:00
Linus Rath 7166c5f112 fix: translate the last English words in Mail: Cc, Unknown, (No subject), Contact added, Copy and the move and connection messages 2026-10-28 05:16:30 +01:00
Linus Rath 28dc3a130b fix: bring a saved event into view in week and day view, also when it starts outside the hours shown 2026-10-28 05:12:13 +01:00
Linus Rath 6b7d6bdb5d feat: ask which occurrences a dragged or resized series event moves, and offer Undo after a move 2026-10-28 03:35:37 +01:00
Linus Rath 6c5aead20b feat: undo a delete to Trash, archive, move, spam report or remove from folder from its toast 2026-10-28 03:11:43 +01:00
Linus Rath 5447c40b7b fix: ask before leaving a contact or group form with unsaved changes 2026-10-28 03:04:40 +01:00
Linus Rath 14aacd95b8 fix: let Back close an image preview or the document editor instead of leaving Files 2026-10-28 02:48:48 +01:00
Linus Rath 5a898dcfd7 fix: let Escape close only the dialog, not also clear the selection behind it 2026-10-28 02:07:54 +01:00
Linus Rath b08bb61a96 fix: open the keyboard shortcuts at the top instead of scrolled down to the tour link 2026-10-28 02:05:50 +01:00
Linus Rath 22629c0c6c feat: open the keyboard shortcuts with ? in every app, on that app's keys 2026-10-28 02:04:37 +01:00
Linus Rath 03304a3cdc fix: show toasts above the phone's bottom bars, newest at the bottom, and let a swipe dismiss them 2026-10-28 01:48:36 +01:00
Linus Rath 635ee883b2 fix: make menus work from the keyboard and keep tapped submenus open 2026-10-28 01:42:06 +01:00
Linus Rath 4c8d597f82 fix: keep Escape working in dialogs after a click inside or on the backdrop 2026-10-28 01:12:42 +01:00
Linus Rath d610312483 fix: update the open calendar and show reminders on time when events change elsewhere #1349 2026-10-26 20:35:52 +01:00
Linus Rath 9de2efb722 fix: open a shared or group account's message from its link instead of the own message with the same id #1351 2026-10-26 20:01:11 +01:00
Linus Rath af536ac90a fix: keep the account and other query parameters of a mail link Lite replays after a 404 #1352 2026-10-26 20:01:10 +01:00
Linus Rath 8940f45baa fix: apply a custom calendar color picked in the system color dialog #1366 2026-10-26 20:01:09 +01:00
Linus Rath 3a225031bc fix: resize calendar events to the clock time the edge was dropped at on DST change days #1348 2026-10-26 20:01:07 +01:00
Linus Rath 87701c8c20 fix: keep the calendars shown or hidden in the Pro interface as the user set them 2026-10-26 15:15:58 +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
VasilisNtovolos 96ae3ce4df fix: reject incomplete email ZIP exports and allow retry 2026-10-21 13:11:41 +03:00
Linus Rath 8428219699 chore: drop the drag test notes from the test folder 2026-10-20 21:15:36 +02:00
Linus Rath eb6fb310da Merge branch 'main' into fix/message-drag-blob-routing 2026-10-20 21:15:36 +02:00
Linus Rath 10b4d2a9db feat: rework the admin panel around a settings-style sidebar and one URL per page
The old panel kept its active tab in a store, so every page sat at
/admin, the sidebar duplicated the webmail rail by hand, and each page
was a stack of boxed cards with their own save buttons. Plugin settings
were only reachable through a gear icon in a row of five.

- one catch-all route for the whole panel; pages switch through
  history.pushState, so `/admin/plugins/<id>`, the back button, bookmarks
  and connector links all work without a route transition
- sidebar laid out like the user settings: back to mail, search over
  pages and their sections, two group headings, change password and
  sign out at the bottom; the phone shows a list, then the page
- pages use SettingsSection rows instead of nested cards, with one page
  header, one flash message and one save bar at the bottom (Discard,
  Save, Ctrl+S); the unsaved-changes prompt still guards leaving
- plugins and themes are lists of rows with a toggle each; a row opens
  the extension's own page with its settings, force-on, permissions,
  kept versions and removal
- overview shows stat tiles, server facts and recent activity
- old `/admin?tab=x` links redirect; the tab store is gone and the
  connector registry resolves admin links to the page URL
- `NEXT_TURBOPACK_ROOT` overrides the Turbopack root so `next dev` runs
  from a worktree with a junctioned node_modules
2026-10-20 15:16:05 +02:00