Commit Graph
3666 Commits
Author SHA1 Message Date
Linus Rath ee17c0dbaf feat: undo marking read or unread, stars and tags from the toast or with Ctrl+Z 2026-10-29 17:53:47 +01:00
Linus Rath 4af4404962 feat: undo the last mail actions with Ctrl+Z or z, newest first 2026-10-29 17:53:46 +01:00
Linus Rath 8d2ebccf08 feat: keep undo toasts, errors and reminders as long as the notification duration says 2026-10-29 17:53:45 +01:00
Linus Rath be5e2dbc53 feat: hold toasts while focused and jump to the newest with Alt+Shift+N 2026-10-29 17:53:45 +01:00
Linus Rath e2fc2c750a feat: read toasts out to screen readers, errors assertively 2026-10-29 17:53:44 +01:00
Linus Rath 36d13b76bd feat: add app-wide live regions for screen reader announcements 2026-10-29 17:53:44 +01:00
Linus Rath 420bf8f9a4 feat: offer an accessible example message in the template picker 2026-10-29 17:53:44 +01:00
Linus Rath 53cb49d3ce feat: ask for alt text when an image goes into a message
Pasted and dropped images used to get the file name as alt text, and
there was no way to change it. Now a small dialog asks what the image
shows right after it is inserted, with a "Decorative image" option that
writes alt="". An image already in the text can be described from the
toolbar or from the ALT button on the selected image. The plain-text
part of an HTML mail writes described images as "[Image: ...]" and
leaves decorative ones out.

The formatting toolbar now also re-renders when only the selection
changes, so its pressed states and the image button follow the caret.
2026-10-29 17:53:43 +01:00
Linus Rath 1b24c1980c feat: start new messages in the default compose font and size 2026-10-29 17:53:42 +01:00
Linus Rath 4d91d9b296 feat: ask before sending when confirm before sending is on 2026-10-29 17:53:42 +01:00
Linus Rath 4f35aa13fa fix: show attachment upload progress and failures in words for screen readers 2026-10-29 17:53:41 +01:00
Linus Rath 447a3fa474 fix: make the formatting toolbar one tab stop that says which styles are on 2026-10-29 17:53:41 +01:00
Linus Rath caee90facc fix: name the message body and tie its error to it for screen readers 2026-10-29 17:53:40 +01:00
Linus Rath 0aa751a3a0 feat: move a recipient between To, Cc and Bcc from the chip's menu 2026-10-29 17:53:39 +01:00
Linus Rath ee486077de fix: name the recipient fields and let the keyboard reach and remove chips 2026-10-29 17:53:38 +01:00
Linus Rath 3962900035 fix: show a tag's letter in its dot and its full name with colour names on 2026-10-29 17:53:37 +01:00
Linus Rath f23784a488 feat: open submenus, previews and the rail peek only on click when hover opening is off 2026-10-29 17:53:37 +01:00
Linus Rath 14519269cf feat: reorder tags, filter rules, apps, accounts and Pro tabs without dragging 2026-10-29 17:53:37 +01:00
Linus Rath 43c865e3e0 test: type the files sidebar fixture with the store's resource type 2026-10-29 17:53:36 +01:00
Linus Rath ef826972dd fix: put the focus back somewhere sensible after an action removes it 2026-10-29 17:53:36 +01:00
Linus Rath 80a2a212a4 fix: say the unread count with the rail's Mail link and follow the unread count style 2026-10-29 17:53:36 +01:00
Linus Rath 7c282f1f40 fix: say which folder is open and how many are unread in the folder lists 2026-10-29 17:53:36 +01:00
Linus Rath dcc504fcfa feat: add landmarks, an h1 per app, skip links and F6 between panes 2026-10-29 17:53:35 +01:00
Linus Rath 13d697ddfb feat: turn off every single-key shortcut when the setting is off 2026-10-29 17:53:34 +01:00
Linus Rath 368acca121 fix: stop app shortcuts from acting behind open dialogs and menus 2026-10-29 17:53:33 +01:00
Linus Rath 4586c69e72 feat: open text size, contrast and motion from anywhere with Alt+Shift+A 2026-10-29 17:53:33 +01:00
Linus Rath 8008393e59 feat: add an Accessibility page to Settings
Settings get a page of their own for accessibility, with presets on top
(screen reader, low vision, dyslexia, focus, keyboard and motor, motion
and seizure safe, deaf and hard of hearing) that change several options
at once and can be undone, then the options by topic, and a reset.

Text size used to be a fixed 14/16/18px on the root, which threw away
the size people set in their browser. It is now a percentage of the
browser's size, from 87.5% to 200%. Motion, contrast and transparency
follow the system by default and can be overridden either way; the
old Animations switch becomes Reduce motion. The visual options are
applied before the first paint, so the page no longer flashes at the
wrong size.

- `lib/accessibility-settings.ts`: the new settings, their allowed
  values, and the code that writes them onto `<html>`
- `app/accessibility.css`: bundled fonts (Atkinson Hyperlegible Next,
  Lexend, OpenDyslexic), text spacing, a focus outline that survives
  Windows contrast themes, more-contrast colours on any theme, reduced
  transparency, a large pointer
- admins can preset every new option but lock only shortcuts, send
  confirmation and the notification duration; a lock on text size or
  another reading aid works as a default
- always-light mail and toolbar labels now sync, and imports drop
  values the page doesn't know
- font size and animations move off Appearance, the plain text font
  off Reading; everyday settings such as conversation view and undo
  send show on both their own page and Accessibility
2026-10-29 17:53:32 +01:00
Linus Rath 5eb6deb26c fix: show password and two-factor settings after a password and TOTP sign-in #1432 2026-10-29 15:50:56 +01:00
Linus Rath d42fc053dd fix: let Escape close a dialog right after its form closed 2026-10-29 15:35:36 +01:00
Linus Rath 2dbe5d0244 fix: show a shared calendar in the color the server gives it #1414 2026-10-29 14:35:22 +01:00
Linus Rath 828d0acc0b feat: offer this morning and this afternoon as schedule times while they are ahead #1390 2026-10-29 14:34:00 +01:00
Linus Rath 69d2f35d78 fix: keep the install card off the send button and remember not now #1411 2026-10-29 14:32:43 +01:00
Linus Rath 378b0e996c fix: keep the browser's sign-in dialog away from uploads after the access token expired #1396 2026-10-29 14:32:27 +01:00
Linus Rath c8bfc46091 fix: update folder counts as soon as a send removes its draft #1412 2026-10-29 14:32:26 +01:00
Linus Rath 1411907082 fix: show the two-factor code prompt as the next sign-in step, not an error #1422 2026-10-29 14:31:41 +01:00
Linus Rath 863806fc65 fix: translate system folder names in the advanced search folder list #1429 2026-10-29 14:24:07 +01:00
Linus Rath e1b43c894f fix: stop warning about failed checks on an invitation that passes dmarc #1403 2026-10-29 14:20:44 +01:00
Linus Rath f8f2e93cd9 fix: count a dkim pass the receiver reports by header.i only #1420 2026-10-29 14:18:48 +01:00
Linus Rath 6d96f31652 fix: keep the composer's spacing on the reply attribution line 2026-10-29 14:14:41 +01:00
Linus Rath c7d0525f04 fix: stop waiting for plugin search results when the search fails 2026-10-29 14:14:10 +01:00
Linus Rath a75db40f7f Merge pull request #1421 from pcatapan/codex/composer-quote-collapse 2026-10-29 14:12:41 +01:00
Linus Rath 5ab935a879 Merge pull request #1417 from b3rsrk/fix/foreign-draft-paragraph-spacing 2026-10-29 14:12:38 +01:00
Linus Rath 47ee263d76 Merge pull request #1419 from HOLOEYE-JZ/feat/plugin-search-results-pending
# Conflicts:
#	components/email/plugin-search-results.tsx
2026-10-29 14:11:34 +01:00
Linus Rath 8e533f090c Merge pull request #1418 from HOLOEYE-JZ/feat/plugin-search-result-marks 2026-10-29 14:11:11 +01:00
Linus Rath 720a903d57 Merge pull request #1428 from VasilisNtovolos/fix/download-all-error-feedback 2026-10-29 14:11:07 +01:00
Linus Rath 4406a6435e Merge pull request #1426 from VasilisNtovolos/fix/attachment-download-error-feedback 2026-10-29 14:10:42 +01:00
Linus Rath 2c1645ac2d Merge pull request #1427 from creyD/main 2026-10-29 14:10:38 +01:00
Linus Rath 764ee97692 test: bring the main test suite back to green after the vitest 5 upgrade and header rework 2026-10-29 14:07:40 +01:00
Linus Rath 5aa44a5bfe chore: update vitest to 5, jsdom to 30 and typescript to 6 2026-10-29 14:00:54 +01:00
VasilisNtovolos 995262bde2 fix: report partial and failed attachment ZIP downloads 2026-10-29 14:02:24 +02:00