# Download Element

> Secure collaboration and messaging

- Canonical page: https://everyversion.net/element/
- Publisher: Element
- Latest: Windows 1.12.33, macOS 1.12.33 (Windows build released 2026-10-27)
- Platforms: Windows, macOS
- License: AGPL-3.0-only or GPL-3.0-only (https://github.com/element-hq/element-desktop/blob/HEAD/LICENSE-GPL-3.0)
- Price: Free and open source
- Website: https://element.io/download
- Support: https://element.io/help

- winget ID: Element.Element
- Homebrew cask: element
- Verification: level 1 — Hashes re-computed from the publisher’s download: 3 of 3 installers match the upstream manifest. Checked by Cristian Gonzalez Guasch.
- Source (Windows): winget-pkgs @ daa8e01ceef83af56e6a91c8cb96a24bf9cef073 — https://github.com/microsoft/winget-pkgs/tree/daa8e01ceef83af56e6a91c8cb96a24bf9cef073/manifests/e/Element/Element
- Source (macOS): Homebrew cask @ 22c8896870af32f439206f991b2b6b9b281dafa6 — https://github.com/Homebrew/homebrew-cask/blob/22c8896870af32f439206f991b2b6b9b281dafa6/Casks/e/element.rb

## Overview

Element is a Matrix-based end-to-end encrypted messenger and secure collaboration app. It’s decentralized for digital sovereign self-hosting, or through a hosting service such as Element Matrix Services. Element operates on the open Matrix network to provide interoperability and easy connections.

## Windows

### What the installer does
- Delivered as a standalone setup program (.exe) for x64 and ARM64.
- Installs for the current user only, so administrator rights are normally not needed.
- Supports unattended install with `--silent`.
- Declared install modes: interactive and silent.
- Registers the `element://` link protocol.
- Upgrades install over the existing version.

### Versions (newest first)

#### 1.12.33 — 2026-10-27

- x64 exe (user): Element Setup 1.12.33.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.33.exe
  - sha256: 9ce1ba82ef244cd3b26333d0673769641676fa3c5477ea8c388ed11f42ed7c20
- arm64 exe (user): Element Setup 1.12.33.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.33.exe
  - sha256: bd2a6d4acf7a015a260573e8729e1dfde9c644549db87fde13a3ef0237ea52a3
Release notes: ✨ Features - Copy changes for "set up recovery" (#35437). Contributed by @richvdh. - Fix calls respawning from error screen on room switch. (#35470). Contributed by @toger5. - Split ChangeRecoveryKeyBody out of ChangeRecoveryKey (#35403). Contributed by @kaylendog. - Use a dialog to prompt the user about their recovery key when logging out (#35398). Contributed by @kaylendog. - Remove introductory screen from "create recovery key" flow (#35451). Contributed by @richvdh. - Don't allow to skip device verification by default (#35364). Contributed by @mxandreas. - Remodel "Can't confirm" dialog to match designs (#35375). Contributed by @andybalaam. - Drop support for migrating libolm sessions (#35138). Contributed by @Half-Shot. - Update Pill and PillInput design (#35370). Contributed by @florianduros. - Offer 'Sign out' on the identity reset page if there is no other option (#35307). Contributed by @andybalaam. - Put user status below the avatar (#35328). Contributed by @dbkr. 🐛 Bug Fixes - Update Electron to pick up patches (#35573). Contributed by @t3chguy. - Expand the device wildcard when a widget sends an encrypted to-device message (#35183). Contributed by @ara4n. - Keep opening voice-only calls in PiP when the lobby is skipped (#35495). Contributed by @Johennes. - Fix /spoiler command not converting markdown to HTML (#35103). Contributed by @jasonjose007. - Open a call that is already in progress maximised, even for voice (#35443). Contributed by @ara4n. - Fix guest login in oidc flow (#35432). Contributed by @florianduros. - Avoid unhandled promise rejection from CallStore.onReady() (#34861). Contributed by @hughns. - Add border around user profile avatar (#35460). Contributed by @dbkr. - Fix PiP drag bar when displaying over widgets (#35395). Contributed by @mgcm. - Feed thread replies to widgets (#35444). Contributed by @ara4n. - Ensure 'Can't confirm?' is primary only if no other options are available (#35406). Contributed by @andybalaam. - Fix restricted guest module showing excluded UI elements (#35412). Contributed by @florianduros. - Update compound-web to 10.3.1 (#35390). Contributed by @dbkr. - Run DeviceListener rechecks one at a time (#35053). Contributed by @langleyd. - Keep the new timeline at the bottom when its viewport changes height (#35374). Contributed by @langleyd. - Stop writing removed legacy mention rules from the Labs notification settings (#35035). Contributed by @barodeur. - Ellipsise long names in widget picture-in-picture view (#35329). Contributed by @robintown.

Pin: `winget install --id Element.Element --version 1.12.33 --exact`

#### 1.12.32 — 2026-10-16

- x64 exe (user): Element Setup 1.12.32.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.32.exe
  - sha256: 633a783365293916580fe8a589f3b0c8cad9e2311f45f65e2f527aa6dda72d5a
- arm64 exe (user): Element Setup 1.12.32.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.32.exe
  - sha256: a4cc0403bb291414428f05b46589ae5d8095055f34c31382b0541448370fcefe
Release notes: Security - Remove support for NEB starter links in messages. Fixes GHSA-x2rg-2g77-mx2w - Remove support for guest_access_token & guest_user_id. Fixes GHSA-c88w-7h6p-27xr 🐛 Bug Fixes - Fix crash when preview room is under the fold (#35500).

Pin: `winget install --id Element.Element --version 1.12.32 --exact`

#### 1.12.31 — 2026-10-13

- x64 exe (user): Element Setup 1.12.31.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.31.exe
  - sha256: acd80a92089f0dc9e48091514214df9ef177df884b0cdf1d0e3af4a76cad7ce8
- arm64 exe (user): Element Setup 1.12.31.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.31.exe
  - sha256: 3747a0238d85caac869188b42d513c538458bb06d210c6fd2d6fb2f9d026caea
Release notes: ✨ Features - Do not allow skip device verification by default (#35259). Contributed by @mxandreas. - Collection of EN string changes, Pt. 2 (#35289). Contributed by @dbkr. - Show messages local echos in the new timeline (#35269). Contributed by @langleyd. - Update wording of crypto stuff during sign-in (#35239). Contributed by @andybalaam. - Add a Markdown viewer for .md attachments in the right panel (#35203). Contributed by @ZacksBot. - Improve invite button UX in member list (#35270). Contributed by @florianduros. - Collection of EN string changes, Pt.1 (#35115). Contributed by @dbkr. - Show the open room in the room list before joining it (#35207). Contributed by @florianduros. - Offer 'Sign out' on the verification page instead of 'Remove this device' (#35211). Contributed by @andybalaam. - Move PDF viewer page controls left and zoom controls right, and show the zoom level (#35229). Contributed by @ZacksBot. - Element call as a react component (#34935). Contributed by @toger5. - Show but disable unusable verification buttons (#35204). Contributed by @andybalaam. - Improve knocking workflow (#35140). Contributed by @florianduros. - Pdf viewer zoom buttons (#35145). Contributed by @ZacksBot. - Render PDFs in a usercontent iframe (#35067). Contributed by @ZacksBot. - Add cross-room thread panels to Threads Activity Centre (#32851). Contributed by @nathanael-h. - User status in RTE (wysiwyg) composer (#35139). Contributed by @dbkr. 🐛 Bug Fixes - [Backport staging] Fix blank maps by bundling the maplibre-gl worker explicitly (#35442). Contributed by @RiotRobot. - [Backport staging] Revert "Do not allow skip device verification by default (#35259)" (#35345). Contributed by @RiotRobot. - [Backport staging] Fix Debian control file Maintainer field (#35344). Contributed by @RiotRobot. - Log getPickleKey() failures consistently (#34955). Contributed by @hughns. - Fix message draft getting lost when a call ends (#35261). Contributed by @t3chguy. - Fix clicks on pills closing the RoomView (#35266). Contributed by @t3chguy. - Align own-message reactions with the bubble edge (#35074). Contributed by @langleyd. - Reveal the add-reaction control when hovering anywhere on an event (#35177). Contributed by @langleyd. - Accept dropped files in the right panel's chat timeline (#35254). Contributed by @ara4n. - Only dismiss the incoming call toast when its own events are redacted (#35238). Contributed by @ara4n. - Fix thread panel actions incorrectly triggering thread open (#35263). Contributed by @t3chguy. - Fall back to origin_server_ts in call tombstone tiles without sender_ts (#35186). Contributed by @ara4n. - Add no-cache header to /usercontent/ in default nginx config (#35237). Contributed by @t3chguy. - Keep an incoming call ringing when a call in another room ends (#35222). Contributed by @ara4n. - Keep thread reactions visible when hovering the message (#35171). Contributed by @langleyd. - Stop escaping a plain text message which has no markdown in it when editing (#34638). Contributed by @hayaksi1. - Stop presenting a PiP call when the widget closes it (#35179). Contributed by @ara4n. - Fix edited message text being clipped when it contains a wide code block (#35169). Contributed by @langleyd. - Fix spotlight alias text and notification badge in high contrast mode and deflake test (#35037). Contributed by @langleyd. - Notify when you are invited to a room (#34665). Contributed by @hayaksi1.

Pin: `winget install --id Element.Element --version 1.12.31 --exact`

#### 1.12.30 — 2026-09-29

- x64 exe (user): Element Setup 1.12.30.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.30.exe
  - sha256: b9ac9617acfa667eb5470e67e5db744d3b595b35c285100a53ad17719f7cc6d3
- arm64 exe (user): Element Setup 1.12.30.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.30.exe
  - sha256: 65d00460f1b4aaa006d02864cfbf8afeb83717cfc3f59aa5c95e99d03eed13bb
Release notes: 🦖 Deprecations - Remove legacy Module & Customisation API (#33941). Contributed by @t3chguy. ✨ Features - [Backport staging] Prepare module-api 2.2.0 release (#35149). Contributed by @RiotRobot. - [Backport staging] Implement the X.509 IPC into the module API (#35146). Contributed by @RiotRobot. - List the shortcut of the room list resizer in the settings (#35130). Contributed by @florianduros. - Disable user status UI when offline (#35106). Contributed by @dbkr. - Handle M_INVITE_BLOCKED when an invite is rejected (#35128). Contributed by @Half-Shot. - Prepare module-api 2.1.0 release (#35105). Contributed by @kaylendog. - Change user status to enabled by default (#35087). Contributed by @dbkr. - FOSS components of experimental X.509-based identity verification (#34973). Contributed by @kaylendog. - New timeline panel in the room view (labs) (#34859). Contributed by @langleyd. - Editing bundled URL previews in e2ee rooms (#34970). Contributed by @Siriusmart. - Unified media preview 5 - old media bodies match the preview styles (#34893). Contributed by @Siriusmart. - Unified media preview 4 - upload confirm dialog uses the previews (#34892). Contributed by @Siriusmart. - Unified media preview 3 - URL previews use the previews (#34891). Contributed by @Siriusmart. - Unified media preview 1 - defining the shared components (#34889). Contributed by @Siriusmart. - URL preview editing in edit composer (#34995). Contributed by @Siriusmart. - Sending/Receiving bundled URL previews in e2ee rooms (#34996). Contributed by @Siriusmart. - Add an end-to-end Element Call test with a real MatrixRTC backend (#35081). Contributed by @toger5. - Update opengraph image (#35042). Contributed by @t3chguy. - Room list: improve performance (#35043). Contributed by @florianduros. - Add tokenizer mode support for message search (#33048). Contributed by @shinaoka. - Log app version on startup for all platforms (#34984). Contributed by @hughns. - Room list: don't fire Chat moved toast when favourite/low prio toggles are used in context menu (#34404). Contributed by @florianduros. 🐛 Bug Fixes - [Backport staging] Fix banner module's logo_href not working in Univention mode (#35245). Contributed by @RiotRobot. - Do not make a thread bright red when mentioned. (#35132). Contributed by @Half-Shot. - Restore spacing between message text and URL previews (#35127). Contributed by @ZacksBot. - Limit user status length in tooltips (#35100). Contributed by @dbkr. - Fix autocomplete/formatting bar being hidden when editing a message (#35126). Contributed by @Half-Shot. - Bound user status length in room header (#35104). Contributed by @dbkr. - Correct pkcs11js allowBuild configuration (#35112). Contributed by @kaylendog. - Only emit warnings about camelCase config settings once per setting (#35000). Contributed by @andybalaam. - Store the token fallback under its own key so it can actually be read (#34868). Contributed by @hughns. - Fix/call tile bubble padding (#35073). Contributed by @langleyd. - Fix user status overflowing in settings dialog (#35096). Contributed by @dbkr. - Fix Wayland compositors showing duplicate icons for Element in dock/task switcher apps. (#34433). Contributed by @koppor. - Limit custom status text to 30 characters (#35034). Contributed by @Tyagiquamar. - Fixed misaligned text in message composer URL preview (#35072). Contributed by @Siriusmart. - Show intentional mention push rules in notification settings (#35031). Contributed by @barodeur. - Room list: a room opened in the spotlight should be displayed in the room list (#35030). Contributed by @florianduros. - Prevent close button from being hidden by long PDF title (#35048). Contributed by @Siriusmart. - Stop telling people leaving a restricted room that they need an invite to return (#34659). Contributed by @hayaksi1. - Fix OAuth logout bug if started offline (#34918). Contributed by @dbkr. - Show key storage out of sync if backup download not working (#35006). Contributed by @richvdh. - Do not force identity reset if user forgets recovery key (#35005). Contributed by @richvdh. - Redesign poll dialog busy state (#35020). Contributed by @t3chguy. - Jump to the start of the picked day in local time, not UTC (#34476). Contributed by @hayaksi1. - Fix crash on Windows/macOS when keychain access is denied (#34922). Contributed by @kaylendog. - Match keyboard shortcuts case insensitively so caps lock does not break them (#34478). Contributed by @hayaksi1. - Hide the macOS app on ⌘W/close instead of leaving it in a windowless limbo (#33992). Contributed by @hayaksi1. - Fix authenticated avatar fetching for macOS Touch Bar (#34993). Contributed by @ex0ns.

Pin: `winget install --id Element.Element --version 1.12.30 --exact`

#### 1.12.29 — 2026-09-22

- x64 exe (user): Element Setup 1.12.29.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.29.exe
  - sha256: aacce2086fc3dceab0a7b4cba0db50b4c96ffffbd1c30e5dea5f70972546c323
- arm64 exe (user): Element Setup 1.12.29.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.29.exe
  - sha256: 43ba6d5d92e2d5034fe07d399a959d6e9d4e17e3f8049873cd6e1fc46eaba274
Release notes: Update modules in element-web modules Docker image

Pin: `winget install --id Element.Element --version 1.12.29 --exact`

#### 1.12.28 — 2026-09-16

- x64 exe (user): Element Setup 1.12.28.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.28.exe
  - sha256: 983c68b01a1423f5134135ec31898ec4e884348ab33439e1ad4e5c639a56229e
- arm64 exe (user): Element Setup 1.12.28.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.28.exe
  - sha256: 07fb526d11f347ec677717bca61bf3ed32ac345414e28dd956ebf263bca2a0f4
Release notes: ⚠️ Important Desktop releases now require glibc 2.34, ie. Debian bookworm or Ubuntu 22.04. Support for Debian bullseye and Ubuntu earlier than 22.04 has been dropped since Debian bullseye's LTS support period has now ended. If you are running a version of these OSes for which support has been dropped (or another distribution using glibc earlier than 2.34) you will need to upgrade your OS to continue using Element Desktop. Security - Fix GHSA-wqmv-r2qj-2j9p ✨ Features - Add analytics for uploads (#33846). Contributed by @Half-Shot. - Module API for overriding URL Preview results (#34877). Contributed by @Half-Shot. - Room list: add an Invites section (#34736). Contributed by @florianduros. - Room list: collapse sections when a room is dragged (#34290). Contributed by @florianduros. - Show an image you just uploaded without downloading it again (#34753). Contributed by @hayaksi1. - Add warning the public rooms are open for users outside the organisation (#34876). Contributed by @mxandreas. - Room list: add a default people section (#34713). Contributed by @florianduros. - Handle home & welcome page anchor links in-tab (#34873). Contributed by @t3chguy. - Add user status in timeline pills (#34832). Contributed by @dbkr. 🐛 Bug Fixes - Don't restart the app when clearing data (#34972). Contributed by @dbkr. - Remove the "Manage account" button from the user menu (#34966). Contributed by @langleyd. - Bump minimum glibc level to 2.35 (#34964). Contributed by @Half-Shot. - Validate that the /query argument is a Matrix user ID (#34473). Contributed by @hayaksi1. - Load room list sections only when matrix client is ready (#34937). Contributed by @florianduros. - Fix module composer upload options appearing twice (#34920). Contributed by @Half-Shot. - Respect reduced motion preference for read marker transition (#34927). Contributed by @t3chguy. - Test that disabled client well-known lookups make no network request (#34923). Contributed by @langleyd. - Add a wait for first sync before showing the Home screen (#34874). Contributed by @Half-Shot. - Add multi-digit support for overlay badges and tests (#33637). Contributed by @langleyd. - Fix space hierarchy checkboxes not working on click (#34860). Contributed by @t3chguy. - Exporter: replace naming logic with eventId + MIME-based extensions (#33699). Contributed by @Marcool04. - Say when a spotlight search found nothing instead of selecting a filter (#34641). Contributed by @hayaksi1. - Report a failure to update notification settings to the user (#34521). Contributed by @hayaksi1. - Stop blaming permissions when the homeserver refuses an invite (#34590). Contributed by @hayaksi1.

Pin: `winget install --id Element.Element --version 1.12.28 --exact`

#### 1.12.27 — 2026-09-01

- x64 exe (user): Element Setup 1.12.27.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.27.exe
  - sha256: e74c3562df34c8897fbf0fdd72c2aca905291227bdbbacba718e609d1750975c
- arm64 exe (user): Element Setup 1.12.27.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.27.exe
  - sha256: 7ea12134636375a51722687aa0f0e90aaaf54a4177945bd6d27ecb6531e7b9c3
Release notes: ✨ Features - Timeline MVVM 2 - RoomTimelineViewModel (#34683). Contributed by @langleyd. - Promote Custom Themes labs feature to devtools (#34703). Contributed by @Half-Shot. - Update bundled URL preview implementation to reflect MSC updates (#34764). Contributed by @Half-Shot. Fixes GHSA-9r5h-8m2x-w7q6 - Render knock membership events in notifications (#34268). Contributed by @ara4n. - Room list: add room selection on section creation/edition (#34387). Contributed by @florianduros. - Room list: add settings to consider activity as unread (#34748). Contributed by @florianduros. - Reworked composer URL previews (#34279). Contributed by @Siriusmart. - Add new module API to allow setting User Verification CAs (#34620). Contributed by @richvdh. - Tooltip and cursor enhancements for the left panel separator (#34643). Contributed by @MidhunSureshR. - Allow settings status directly from menu (#34707). Contributed by @dbkr. - Wire up recent emoji to user status emoji picker (#34710). Contributed by @dbkr. 🐛 Bug Fixes - [Backport staging] Fix bug where manually set status would get lost (#34828). Contributed by @RiotRobot. - Render textual events as plain text in chat exports (#34496). Contributed by @hayaksi1. - Fix user levels being edited when going into room setting role tab (#34783). Contributed by @florianduros. - RoomList: wire up "Show People" Space settings Space (#34768). Contributed by @florianduros. - Don't let a failed screen-share source query hang the picker, and consume the display-media callback once (#34002). Contributed by @hayaksi1. - Always show the current room, even when the Unread filter is active (#34228). Contributed by @andybalaam. - Show the same unreads on Home as the spaces show (#34664). Contributed by @hayaksi1. - Stop notification states emitting an update when nothing has changed (#34680). Contributed by @hayaksi1. - Always pad the minutes of a duration if the hours place is occupied (#34734). Contributed by @robintown. - Show the promotion warning when your own power level comes from the room default (#34658). Contributed by @hayaksi1. - Ensure "Manage account" button in user menu opens a new tab (#34552). Contributed by @Half-Shot. - Re-evaluate the unread state of a room when one of its events is decrypted (#34515). Contributed by @hayaksi1. - Let the next and previous room shortcuts work before a room is opened (#34506). Contributed by @hayaksi1. - Strip a UTF-8 byte order mark before parsing JSON files on desktop (#34504). Contributed by @hayaksi1. - Only offer permission levels the user can actually set (#34500). Contributed by @hayaksi1. - Show the unsent symbol on the All rooms badge (#34498). Contributed by @hayaksi1. - Use correct emoji font on the custom status emoji button (#34708). Contributed by @dbkr. - Stop messages flickering through the file panel as they are sent (#34608). Contributed by @hayaksi1. - Fix illegible text on hovered Spotlight results in high-contrast theme (#34465). Contributed by @PrinceXDev. - Format relative timestamps using the locale's own date order (#34484). Contributed by @hayaksi1. - Stop showing an unread count on a room you have left (#34595). Contributed by @hayaksi1. - Avoid destroying a still-valid session when the OS keychain is temporarily unreadable (#33986). Contributed by @hayaksi1. - Restore the read marker fade by using a valid CSS easing function (#34485). Contributed by @hayaksi1. - Stop one finished sound from cutting off another (#34576). Contributed by @hayaksi1. - Add Sentry frame rewriting for Element Desktop integration (#34667). Contributed by @PrinceXDev. - Replace the selected text when inserting a new line in the composer (#34509). Contributed by @hayaksi1. - Open the quick settings theme menu upwards so every theme is reachable (#34501). Contributed by @hayaksi1. - Keep the original URL when deserialising markdown links (#34488). Contributed by @hayaksi1. - Stop reporting a search you cancelled yourself as a failure (#34594). Contributed by @hayaksi1. - Respect retry_after_ms and stop retrying rate limited invites forever (#34480). Contributed by @hayaksi1.

Pin: `winget install --id Element.Element --version 1.12.27 --exact`

#### 1.12.26 — 2026-08-18

- x64 exe (user): Element Setup 1.12.26.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.26.exe
  - sha256: bfde3eee3aa31b44b907cadaa433cbfd29c5ed9d84ecf75f38ea73ec863a5f1e
- arm64 exe (user): Element Setup 1.12.26.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.26.exe
  - sha256: e29e9982452e27f21b1b8810ef011b54db53326a63a372d869119ac39384f009
Release notes: ✨ Features - Timeline MVVM 1 - Shared TimelineView and Overlay Buttons (#34464). Contributed by @langleyd. - Tell the user when registration is being rate limited (#34519). Contributed by @hayaksi1. - Provide element-web modules docker image (#34657). Contributed by @t3chguy. - Show & clear your own on-a-call status (#34613). Contributed by @dbkr. - feat(widget): Rtc transports discovery for widgets (#34393). Contributed by @BillCarsonFr. - Custom user status (#34386). Contributed by @dbkr. - Add a Module API for accessing storage helper functions. (#34284). Contributed by @Half-Shot. - Room list: persist section state (expanded/collapsed) (#34351). Contributed by @florianduros. 🐛 Bug Fixes - [Backport staging] macOS Fix: Can't change homeserver on login or press the logout button on the splash/loading srceen (#34706). Contributed by @RiotRobot. - [Backport staging] Cachebust languages.json (#34711). Contributed by @RiotRobot. - Fix layout of user status dropdown (#34668). Contributed by @dbkr. - Fix notification badge sizing (#34655). Contributed by @ZacksBot. - Keep a file's extension when it is renamed in the desktop save dialog (#34601). Contributed by @hayaksi1. - Update the pinned message banner when a pinned message is edited (#34631). Contributed by @hayaksi1. - Use the dark code highlighting stylesheet in the dark-custom theme (#34491). Contributed by @hayaksi1. - Keep a copy of the audio buffer so the WAV fallback can run (#34481). Contributed by @hayaksi1. - Update the member list invite button when power levels change (#34475). Contributed by @hayaksi1. - Open linkified room aliases and permalinks in the app rather than the browser (#34507). Contributed by @hayaksi1. - Stop large audio playback when the media element ends (#34495). Contributed by @hayaksi1. - Fix spacing in user status dropdown (#34589). Contributed by @dbkr. - Reverse a confirmed autocomplete with a single undo (#34635). Contributed by @hayaksi1. - Allow a notification keyword to start with a dot (#34574). Contributed by @hayaksi1. - Fix mistaken reference to element_call.disable in docs (#34647). Contributed by @robintown. - Round the room preview dialog like everything around it (#34597). Contributed by @hayaksi1. - Increase Threads panel header height to 64px to match Pinned Message banner (#34566). Contributed by @PrinceXDev. - fix: align room timeline scrollbar to viewport edge (#33788). Contributed by @Adi-Beker. - Let a click on the separator wander a little before it counts as a drag (#34580). Contributed by @hayaksi1. - Surface an error when a downloaded file can't be opened instead of failing silently (#33998). Contributed by @hayaksi1. - Keep emoji at code size inside code blocks so line numbers stay aligned (#34497). Contributed by @hayaksi1. - Make permalinks to the same event work more than once (#34483). Contributed by @hayaksi1. - Remove code to round panel size on resize (#34543). Contributed by @MidhunSureshR. - Do not ask for a room address when the room already has one (#34499). Contributed by @hayaksi1. - Show the filename in the audio player title when the event has one (#34479). Contributed by @hayaksi1. - Treat an unset profile field as unchanged in collapsed membership summaries (#34493). Contributed by @hayaksi1. - Open space settings when editing a space topic (#34477). Contributed by @hayaksi1. - Show "border" type of separator when clicking on separator (#34549). Contributed by @MidhunSureshR. - fix member list scroll bug where invited 3PID users replace joined members (#34427). Contributed by @rizzler13. - Update Twemoji credits links (#34461). Contributed by @t3chguy. - Fix joinRoom failing when the roomviewstore state changes. (#34180). Contributed by @Half-Shot. - Fixed collapsed URL preview incorrect aspect ratio for chromium (#34382). Contributed by @Siriusmart.

Pin: `winget install --id Element.Element --version 1.12.26 --exact`

#### 1.12.25 — 2026-08-05

- x64 exe (user): Element Setup 1.12.25.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.25.exe
  - sha256: b2fa7e1c51553fb11801ad36c1ebdc0cd4ace888260079e935a50b1ebf9f45fa
- arm64 exe (user): Element Setup 1.12.25.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.25.exe
  - sha256: 543dd8fec9189e54d8072adb6e4fcafaa1fab84272d39d96fa42f7403dd36502
Release notes: 🦖 Deprecations - Remove support for MSC3391 & MSC3852 (#34400). Contributed by @t3chguy. ✨ Features - Auto Collapse Behaviour - Collapse left panel during calls (#33771). Contributed by @MidhunSureshR. - Use correct color for cancel button in dialog (#34308). Contributed by @florianduros. - Auto Collapse Behaviour - Collapse left panel on window resize (#32964). Contributed by @MidhunSureshR. - Room list: change Edit section label to Save in edit section dialog (#34364). Contributed by @florianduros. - Set auto on-a-call status (#34306). Contributed by @dbkr. - Collapsed URL previews in timeline (#34165). Contributed by @Siriusmart. - Include the url preview bundle field in the devtools timeline event editor (#34289). Contributed by @Siriusmart. - Use url preview bundle for URL preview in timeline (MSC4095) (#34170). Contributed by @Siriusmart. - Support for reading m.call status (#34295). Contributed by @dbkr. - Auto Collapse Behaviour - Add necessary functionality to UIStore (#32963). Contributed by @MidhunSureshR. - Introduce a Module API to get application settings. (#34278). Contributed by @Half-Shot. - Make notification settings copy/layout more user-friendly (#34120). Contributed by @mxandreas. 🐛 Bug Fixes - Fix various dialogs failing to open due to containing linked text (#34304). Contributed by @Half-Shot. - Draw a styled 32px macOS title bar band (#34419). Contributed by @langleyd. - Room list: fix scrolling with touch device (#34381). Contributed by @florianduros. - Update to Seshat 5.0.0, fixing panics (#34396). Contributed by @richvdh. - Add ellipsis and title to spotlight search results (#34379). Contributed by @langleyd. - Room list: increase startup performance when rooms have notifications (#34358). Contributed by @florianduros. - Widen the macOS title-bar drag strips so the window is easy to move (#33991). Contributed by @hayaksi1. - Warn when an encrypted search runs before the index has finished building (#34001). Contributed by @hayaksi1. - Make the text copy button use IconButton (#34224). Contributed by @dbkr. - Room list: fix *Chat moved* toast appearing when room list is loaded (#34305). Contributed by @florianduros. - Enable some oxlint a11y rules & improve keyboard accessibility (#34291). Contributed by @t3chguy. - Fix join call button in header having two labels (#34293). Contributed by @robintown. - Fixed sending url preview bundles relying on update delay (#34266). Contributed by @Siriusmart. - Room list: fix when a room is added twice (#34281). Contributed by @florianduros. - Make the persistent-storage request observable and warn when it is denied (#33987). Contributed by @hayaksi1. - Give the collapsed space panel separator clearance from the macOS traffic lights (#34243). Contributed by @spoisseroux. - Fix incorrect plural form in call tile (#34272). Contributed by @florianduros.

Pin: `winget install --id Element.Element --version 1.12.25 --exact`

#### 1.12.24 — 2026-07-21

- x64 exe (user): Element Setup 1.12.24.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.24.exe
  - sha256: f0fdfba95899066e4742159944e9cec459a0b656dda3cb55d08602107c17bd3f
- arm64 exe (user): Element Setup 1.12.24.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.24.exe
  - sha256: 95f0c2876402e3400be758f86c36568552ee59f45b29a7ac9f886f2c63f5b648
Release notes: ✨ Features - Add user status to autocomplete suggestion (#34241). Contributed by @dbkr. - Add user status to dm room header (#34225). Contributed by @dbkr. - User status in room summary card (#34239). Contributed by @dbkr. - Sending URL Preview Bundles (MSC 4095) (#34150). Contributed by @Siriusmart. - Add config param to disable client wellknown fetch (#34084). Contributed by @langleyd. - Ongoing call tiles - Implement the view-models and store (#34198). Contributed by @MidhunSureshR. - Ongoing call tiles - Implement the required views (#34197). Contributed by @MidhunSureshR. - Add user status emoji to member list (#34210). Contributed by @dbkr. - Add user status in user info right panel card (#34212). Contributed by @dbkr. - RoomList: add back Favourites and Low Priority filters when sections are disabled (#34162). Contributed by @florianduros. - Add user status to DM rooms in the room list (#34191). Contributed by @dbkr. - Adapt OAuth2 implementation to Matrix Spec v1.18 (#34026). Contributed by @t3chguy. - Implement tombstone tiles for calls in room and DM (#34141). Contributed by @MidhunSureshR. - Allow disabling legacy calls and make Voice & Video settings Legacy Voice & Video (#33692). Contributed by @toger5. - UI for setting user status (#33856). Contributed by @dbkr. - Start voice call in PiP (not in fullscreen) (#34055). Contributed by @toger5. - Add a module API for overriding the composer preview. (#33978). Contributed by @Half-Shot. - Remove legacy room list (#34040). Contributed by @florianduros. - Add URL preview above message composer (#33964). Contributed by @Half-Shot. 🐛 Bug Fixes - Fix icon in Jitsi lobby not rendering correctly (#34246). Contributed by @t3chguy. - Automatically recover from a renderer crash instead of leaving a blank window (#33988). Contributed by @hayaksi1. - Fetch authenticated media through the session for "Save image as" (#33997). Contributed by @hayaksi1. - RoomList: fix room scroll when clicked in thread activity centre (#34179). Contributed by @florianduros. - Center long user ids in the user menu (#34182). Contributed by @dbkr. - Fix composer preview getting stuck on a single module API preview (#34173). Contributed by @Half-Shot. - Throttle notification sounds so a backlog doesn't play them all at once (#33989). Contributed by @hayaksi1. - Change user ID colour to secondary (#34129). Contributed by @dbkr. - Fix map tooltip overlapping message composer (#33982). Contributed by @Tamajit-005. - Clear the composer preview after sending a message. (#34116). Contributed by @Half-Shot. - Room list: fix unnecessary re-rendering of room list items while scrolling (#34112). Contributed by @florianduros. - Room list: improve performance with smarter custom section loading (#34102). Contributed by @florianduros. - Pluralise the multi-session remove button and confirmation dialog (#33983). Contributed by @nnhhoang.

Pin: `winget install --id Element.Element --version 1.12.24 --exact`

#### 1.12.23 — 2026-07-07

- x64 exe (user): Element Setup 1.12.23.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.23.exe
  - sha256: 084a496a8d7acfbc667a8fd316b02201474c9aff28bab3efcb0c1a97e8f4bffe
- arm64 exe (user): Element Setup 1.12.23.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.23.exe
  - sha256: 7a219cd30b39b2c1d2e10b24ce8992bc2bb5c4348ec444af81f89bda43e6b8cd
Release notes: ✨ Features - Sticky Header for Room List Sections (#33968). Contributed by @langleyd. - Improve link preview look and feel (#33981). Contributed by @Half-Shot. - Room list: move sections out of labs to all the users (#33810). Contributed by @florianduros. - Add "user identity" display to dev tools (#33977). Contributed by @richvdh. - Add unread toast to room list sections (#33961). Contributed by @langleyd. - Room list: add drag and drop of sections to reorder them (#33606). Contributed by @florianduros. - Room list: add release announcement for sections (#33800). Contributed by @florianduros. 🐛 Bug Fixes - [Backport staging] Room list: put toast over sticky headers (#34137). Contributed by @RiotRobot. - [Backport staging] Update Compound to fix tooltips (#34097). Contributed by @RiotRobot. - Fix: Focusing a room in the room list(without hovering) doesn't allow tabbing to the more menu (#34043). Contributed by @langleyd. - Fix double tooltip on collapsed Quick Settings button (#33923). Contributed by @t3chguy. - Fix long display / user names in UserMenu (#33900). Contributed by @dbkr. - Fix handling of deeplinks on Element Desktop (#33827). Contributed by @t3chguy.

Pin: `winget install --id Element.Element --version 1.12.23 --exact`

#### 1.12.22 — 2026-06-23

- x64 exe (user): Element Setup 1.12.22.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.22.exe
  - sha256: 06d7ce9433068fbc7c0b74f896d071816619f95f4058373e22740f11d4200cdd
- arm64 exe (user): Element Setup 1.12.22.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.22.exe
  - sha256: 2cee3716a36b2def47d67507bb34d2a73a3306777a794223a4448a65c25eaceb
Release notes: ✨ Features - User status in user menu (#33797). Contributed by @dbkr. - Room list: add notifications to section headers (#33826). Contributed by @florianduros. - Room list: remove logic to expand a section when a filter is selected (#33785). Contributed by @florianduros. - Add mechanism to locally enforce MSC1763 retention rules (#33772). Contributed by @Half-Shot. - Disable URL previews per-message when the message provides a hint (#33775). Contributed by @Half-Shot. - Room list: improve section in room list context menu (#33733). Contributed by @florianduros. - Room list: remove "Sections are only for you” in edition section dialog (#33780). Contributed by @florianduros. - Room list: remove checkmark in section toast (#33779). Contributed by @florianduros. - Room list: add fade effect to room list item being dragged (#33696). Contributed by @florianduros. - Add user status on user profile icon (#33653). Contributed by @dbkr. - [Labs] Sign in with QR on new EW using generated QR for MSC4108 v2024 (#33184). Contributed by @t3chguy. - Room list: add expand all icon to room list header (#33732). Contributed by @florianduros. - Implement new separator design (#33599). Contributed by @MidhunSureshR. 🐛 Bug Fixes - [Backport staging] Fix broken scrollbar introduced by separator redesign (#33947). Contributed by @RiotRobot. - Apply html utils sanitiser to embedded page (#33842). Contributed by @t3chguy. - Room list: fix keyboard navigation on sections (#33809). Contributed by @florianduros. - Room list: hide the empty/collapse icon when the room list is empty (#33814). Contributed by @florianduros. - Handle unknown screens better (#33793). Contributed by @t3chguy. - Make presence icons & colours consistent throughout the app (#33764). Contributed by @dbkr. - Add padding to account for input outline in devtools (#33766). Contributed by @Johennes. - Limit width of the display name in user menu (#33746). Contributed by @dbkr. - Room list: hide empty section when a filter is enabled (#33747). Contributed by @florianduros. - Room list: display compose menu when sections are enabled (#33725). Contributed by @florianduros.

Pin: `winget install --id Element.Element --version 1.12.22 --exact`

#### 1.12.21 — 2026-06-09

- x64 exe (user): Element Setup 1.12.21.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.21.exe
  - sha256: c5ad3981fbe643f4cbfa48c5a813e586eac69d06d44c1b8c5048f75fa7a2e869
- arm64 exe (user): Element Setup 1.12.21.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.21.exe
  - sha256: 682dd8490c46d90729bb2063d656d4d145d6d7e103b2c6af7b528258c529b5c4
Release notes: ✨ Features - Bump module API to 1.14.0 (#33685). Contributed by @Half-Shot. - Apply new design and display logic to logout confirmation dialog (#33426). Contributed by @uhoreg. - Room list: improve custom sections in Spaces (#33523). Contributed by @florianduros. - Periodically nag the user if their device remains unverified (#33346). Contributed by @uhoreg. - Use the separator as border between roomlist and main panel (#33598). Contributed by @MidhunSureshR. - Add support for m.recent_emoji account data event (#33172). Contributed by @t3chguy. - Room list: reduce font size of sections (#33580). Contributed by @florianduros. 🐛 Bug Fixes - [Backport staging] Recreate resizer view-model when switching to/from module renderer view (#33795). Contributed by @RiotRobot. - Remove resizer from fullscreen modules(like multiroom) (#33684). Contributed by @langleyd. - fix: use configured brand name in JSON and PlainText chat export filenames (#33680). Contributed by @RoySerbi. - Fix pinned message banner disappearing when a pinned message event is unkown (#33534). Contributed by @florianduros.

Pin: `winget install --id Element.Element --version 1.12.21 --exact`

#### 1.12.20 — 2026-05-27

- x64 exe (user): Element Setup 1.12.20.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.20.exe
  - sha256: 198002b7235f75cdb630eebf0fcf8c371e3e8238e7a2a4e8dc3d2c7bc1b9942c
- arm64 exe (user): Element Setup 1.12.20.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.20.exe
  - sha256: 1991f2997c5ae5686dc0592dece76ef31dee6307dd3f36b69af7e3ecf6b1c63f
Release notes: 🐛 Bug Fixes - [Backport staging] Realign the User Menu profile picture on desktop (#33634). Contributed by @RiotRobot.

Pin: `winget install --id Element.Element --version 1.12.20 --exact`

#### 1.12.19 — 2026-05-27

- x64 exe (user): Element Setup 1.12.19.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.19.exe
  - sha256: 265445236b64789ae6f2950e5b56fc74f7918d1f217ba07661510353c3f84f13
- arm64 exe (user): Element Setup 1.12.19.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.19.exe
  - sha256: c8808d79002e8754f843b5c48480ee9ff01751ea9fd4fa7993c20f6d029b996f
Release notes: 🦖 Deprecations - Remove MSC3215 (Report to Moderators) labs feature (#33492). Contributed by @turt2live. ✨ Features - Tweak new user menu design (#33444). Contributed by @dbkr. - Call Tile - Improve tile alignment in modern and bubble layout (#33478). Contributed by @MidhunSureshR. - Module API for adding new file upload mechanisms (#33355). Contributed by @Half-Shot. - Incoming Element Calls now trigger a regular OS notification (#33499). Contributed by @MatrimAl. - Call Tile - Support declined call tile (#33371). Contributed by @MidhunSureshR. - Room list: drag and drop rooms into sections (#33366). Contributed by @florianduros. - Call Tile - Render a tile showing that a call was started (#32988). Contributed by @MidhunSureshR. - Update button in incoming call toast to say 'Decline' (#33405). Contributed by @robintown. - Refactor and redesign user menu (#32812). Contributed by @Half-Shot. 🐛 Bug Fixes - Ensure interface gradually reduces visible buttons when viewport shrinks (#33477). Contributed by @Half-Shot. - Room list: add robustness to custom section loading (#33475). Contributed by @florianduros. - Make it possible to scroll overflowing hidden events again (#33481). Contributed by @robintown. - Fix user menu overlap with macos window controls (#33425). Contributed by @dbkr. - Visually indicate on hover that user menu can be clicked (#33408). Contributed by @robintown. - Fix TAC badges when hovered (#33423). Contributed by @florianduros.

Pin: `winget install --id Element.Element --version 1.12.19 --exact`

#### 1.12.18 — 2026-05-12

- x64 exe (user): Element Setup 1.12.18.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.18.exe
  - sha256: 8a9028d6da10e91e29a9743f385df3c36589b8da24ebbe36efdfc84639d88ef7
- arm64 exe (user): Element Setup 1.12.18.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.18.exe
  - sha256: 937da57f466905d8578ba3335040b7e86c559dada1e9f54d3df0bd3db3d91321
Release notes: ✨ Features - Room list: add collapse/expand all sections (#33318). Contributed by @florianduros. - Show user status in timeline (#32991). Contributed by @Half-Shot. - Disable URL Preview setting if disabled on the homeserver (#33279). Contributed by @Half-Shot. - Go to welcome on logout (#33306). Contributed by @t3chguy. - Room list: edit or remove custom sections (#33283). Contributed by @florianduros. - Re-generate QR code if the channel expires before scan (#33303). Contributed by @t3chguy. - Update toast styles, improve incoming call notifications (#33043). Contributed by @robintown. - Add Module Composer API (#33284). Contributed by @Half-Shot. - Room list: exclude default section from room list item menu (#33278). Contributed by @florianduros. - Show 'Verify this device' toast even if there are no encrypted rooms yet (#32891). Contributed by @andybalaam. - Promote "Share encrypted history" from labs (#33281). Contributed by @richvdh. - Room list: assign room to section when section is created (#33240). Contributed by @florianduros. - Confirm before inviting unknown users to a DM/room (#33171). Contributed by @richvdh. - Room list: assign room to custom section (#33238). Contributed by @florianduros. - Redesign link previews (#33061). Contributed by @Half-Shot. - Room list: scroll to newly creation section (#33210). Contributed by @florianduros. 🐛 Bug Fixes - Update home page CSS (#32723). Contributed by @wolterkam. - Web: Fix typo in 152x152 icon source of manifest.json (#33369). Contributed by @bartvdbraak. - prevent replay hover from restarting playback (#33364). Contributed by @ZacksBot. - Properly save undefined id tokens from OIDC login (#33345). Contributed by @gingershaped. - Show the right cursor when hovering over a space (#33351). Contributed by @robintown. - Set type in auth dict for m.oauth UIA stage (#33344). Contributed by @gingershaped. - Remove duplicated UI in appearance settings (#33336). Contributed by @t3chguy. - Move playwright-common wait-on from devDependencies to dependencies (#33272). Contributed by @t3chguy.

Pin: `winget install --id Element.Element --version 1.12.18 --exact`

#### 1.12.17 — 2026-04-30

- x64 exe (user): Element Setup 1.12.17.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.17.exe
  - sha256: 1156ce79ad9647c25b75ec382c0afb3bae0572ffcea5e9a028aad8c44dbe40ca
- arm64 exe (user): Element Setup 1.12.17.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.17.exe
  - sha256: dca102b015a09e310d68a26b2f63d271b0f97507d6de05134cb53817b4cc4524
Release notes: 🐛 Bug Fixes - [Backport] Fix OIDC login callback handling on Element Desktop (#33337). Contributed by @t3chguy.

Pin: `winget install --id Element.Element --version 1.12.17 --exact`

#### 1.12.16 — 2026-04-28

- x64 exe (user): Element Setup 1.12.16.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.16.exe
  - sha256: 25314da0144b857cda0330028da495dc788a8df74dfd840ed8fe715b838e0eff
- arm64 exe (user): Element Setup 1.12.16.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.16.exe
  - sha256: e3f8d021f8b5b110fa559d58c2d1eba203b003ea48318a93dfca011413a792cf
Release notes: 🦖 Deprecations - Disallow links without protocol (e.g. starting with http(s)://) in LinkedText. (#32972). Contributed by @Half-Shot. ✨ Features - Room list: add custom section creation (#33155). Contributed by @florianduros. - Fall back to OIDC response_mode query if fragment unsupported (#33169). Contributed by @t3chguy. - Switch OIDC to response_mode=fragment (#33100). Contributed by @t3chguy. - Hide spoilers from desktop notifications (#31699). Contributed by @JeftavanderHorst. - Room list: expand sections when a filter is toggled (#33077). Contributed by @florianduros. - Show a 'grab' cursor on picture-in-picture view (#33079). Contributed by @robintown. - Update URL Preview settings (#32992). Contributed by @Half-Shot. - Add user friendly capability text for msc4039.download_file (#32983). Contributed by @BillCarsonFr. - Accessibility improvements in settings (#32968). Contributed by @t3chguy. - Move Low Bandwidth feature to devtools. (#32797). Contributed by @Half-Shot. - Room list: add activity marker to sections (#33024). Contributed by @florianduros. - Remove global h2 css rule in favour of heading styles/components (#32969). Contributed by @t3chguy. - Allow Element Call to use MSC4039 (#32755). Contributed by @JephDiel. - Room list: add default sections (#32785). Contributed by @florianduros. 🐛 Bug Fixes - [Backport staging] Fix Module API versioning (#33261). Contributed by @RiotRobot. - Fix crashes in when opening Bridges in room settings (#33137). Contributed by @defaultdino. - fix(call): leave call along with room (#33162). Contributed by @defaultdino. - Fix React hydration issues (#32958). Contributed by @t3chguy. - Enusre voice message recording does not fall back to the default input if an input is specifically configured. (#32887). Contributed by @jpborie05. - Room list: fix expanded/collapse state of sections (#33074). Contributed by @florianduros. - fix: Left hand sidebar text selectable (#33029). Contributed by @marley. - Collapsible Left Panel - Ensure that panels have non-fractional widths (#33052). Contributed by @MidhunSureshR. - Collapsible Left Panel - Clicking on separator should expand to 100% when no width is available in settings (#33053). Contributed by @MidhunSureshR. - Fix EventListSummary not unbinding event listeners (#33006). Contributed by @t3chguy.

Pin: `winget install --id Element.Element --version 1.12.16 --exact`

#### 1.12.15 — 2026-04-08

- x64 exe (user): Element Setup 1.12.15.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.15.exe
  - sha256: c43810ef081a8493938306d289ecf0a4e2cac698081a729709920465c5c95f69
- arm64 exe (user): Element Setup 1.12.15.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.15.exe
  - sha256: fdb3b84c08edb1692e7c3dc9dea20894b2d8004503964d1afcd5a847c8ed7ec0
Release notes: Fixes Desktop release workflow. This release is identical to v1.12.14 otherwise.

Pin: `winget install --id Element.Element --version 1.12.15 --exact`

#### 1.12.13 — 2026-03-24

- x64 exe (user): Element Setup 1.12.13.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.13.exe
  - sha256: 7111d5dfc253152bbc2887096d5eb4c77a755fc7c7be28874e02d4783dd2ea8b
- arm64 exe (user): Element Setup 1.12.13.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.13.exe
  - sha256: 480d47dea1100a3ee02ab9b133c2881d7713970d4ff40805634226c9d5dfb754
Release notes: 🦖 Deprecations - Remove automatic rageshakes on UTD labs feature (#32778). Contributed by @Half-Shot. - Remove automaticErrorReporting labs feature (#32781). Contributed by @Half-Shot. ✨ Features - Upgrade Element Call for new picture-in-picture designs (#32816). Contributed by @robintown. - Room list: add sections to shared components (#32735). Contributed by @florianduros. - feat: Devtool for sticky events MSC4354 (#32741). Contributed by @BillCarsonFr. - Port URL Preview components to MVVM (#32525). Contributed by @Half-Shot. - Add support for Widget & Room Header Buttons module APIs (#32734). Contributed by @dbkr. - Port over linkifyJS to shared-components. (#32731). Contributed by @Half-Shot. - Redesign widget pip and move into shared component (#32654). Contributed by @toger5. - Implement customisations & login component Module API 1.11.0 (#32687). Contributed by @t3chguy. - Realign MessageActionBar to Figma designs (#32722). Contributed by @t3chguy. - Implement new widget permissions module api (#32565). Contributed by @langleyd. 🐛 Bug Fixes - [Backport staging] Fix soft crash of room list when trying to open a room (#32872). Contributed by @RiotRobot. - Fix "key storage out of sync" appearing when key storage is actually fine (#32811). Contributed by @andybalaam. - Fix remove button styling in local address list of room settings (#32798). Contributed by @florianduros. - Always check & update the users timezone on their profile on startup (#32764). Contributed by @Half-Shot. - Fix nx configuration to actually run type linter (#32776). Contributed by @richvdh. - Fix expand space panel button not being shown on keyboard focus (#32746). Contributed by @t3chguy. - Reset key storage if restoring from Recovery encounters the wrong decryption key (#32668). Contributed by @andybalaam.

Pin: `winget install --id Element.Element --version 1.12.13 --exact`

#### 1.12.12 — 2026-03-10

- x64 exe (user): Element Setup 1.12.12.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.12.exe
  - sha256: b51ab6516d4b14a2c2209e04e37ea7caff0db35be661c2a21c7ba67f528c0804
- arm64 exe (user): Element Setup 1.12.12.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.12.exe
  - sha256: 808962def9f8439ddf3df6db9ffae77d89afb28dfdd5ff6aab026717560b9fb4
Release notes: ✨ Features - Add stable support for MSC4380 invite blocking (#31966). Contributed by @richvdh. - Hide the names of banned users behind a spoiler tag (#32424). Contributed by @andybalaam. - Room list: remove bold effect on selected room (#32593). Contributed by @florianduros. - Use Compound buttons in auth screens (#32562). Contributed by @t3chguy. - Track room list sorting algorithm changes (#32556). Contributed by @MidhunSureshR. - Update sso_redirect_options to work for Native OIDC (#32537). Contributed by @t3chguy. 🐛 Bug Fixes - Room list: avoid excessive re-renders on room list store update or filter change (#32663). Contributed by @florianduros. - Room list: listen to call event to check number of participants (#32677). Contributed by @florianduros. - Fix invite-specific join errors not being shown (#32621). Contributed by @Half-Shot. - Prevent logging lots of "Browser unsupported" lines (#32647). Contributed by @Half-Shot. - Update critical gradient for room status bar (#32575). Contributed by @Half-Shot. - Room list: avoid header overflowing when too long (#32645). Contributed by @florianduros. - Room list: center focus outline of room list item (#32637). Contributed by @florianduros. - Fix misaligned cross in complete security dialog (#32614). Contributed by @dbkr. - Room list: fix keyboard navigation (#32585). Contributed by @florianduros. - Don't show empty privacy section (#32582). Contributed by @dbkr. - Disable room list image dragging (#32590). Contributed by @florianduros. - Update UserMenu theme toggle to use IconButton (#32591). Contributed by @t3chguy. - Room list: make room list item scales with large font size (#32523). Contributed by @florianduros.

Pin: `winget install --id Element.Element --version 1.12.12 --exact`

#### 1.12.11 — 2026-02-24

- x64 exe (user): Element Setup 1.12.11.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.11.exe
  - sha256: 3f3705c17482c00a3ef5de94d88d14347085930359df5f8af7c0d3b66bf6c3de
- arm64 exe (user): Element Setup 1.12.11.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.11.exe
  - sha256: dacd178428bbef2b3724591359d931a06e8bddc892e7d613d70aa800eb800786
Release notes: 🦖 Deprecations - Remove UIFeature.BulkUnverifiedSessionsReminder setting (#31943). Contributed by @andybalaam. - Remove unused function to auto-rageshake when key backup is not set up (#31942). Contributed by @andybalaam. ✨ Features - Room list: update the visuals in order to have better contrast (#32421). Contributed by @florianduros. - Set history visibility to "invited" for DMs and new non-public rooms when creating a room (#31974). Contributed by @langleyd. - Remove server acl status/summaries from timeline (#32461). Contributed by @langleyd. - Update globalBlacklistUnverifiedDevices on setting change (#31983). Contributed by @kaylendog. - Add badge for history visibiltity to room info panel (#31927). Contributed by @richvdh. 🐛 Bug Fixes - Revert exit logic PRs (#2847). Contributed by @MidhunSureshR. - Fix issues with quit logic (#2840). Contributed by @MidhunSureshR. - Default useOnlyCurrentProfiles to true (#32524). Contributed by @dbkr. - Keep custom theme active after reload (#32506). Contributed by @florianduros. - Update font format from 'ttf' to 'truetype' (#32493). Contributed by @all-yall. - Fix videos on Firefox (#32497). Contributed by @p1gp1g. - Use a dedicated FAQ/help entry for key storage. (#32480). Contributed by @mxandreas. - Avoid showing two chat timelines side by side after a call (#32484). Contributed by @robintown. - Update screenshot for reactive display name disambiguation (#32431). Contributed by @aditya-cherukuru. - Fix Status Bar being unreadable when the user overrides the default OS light/dark theme. (#32442). Contributed by @Half-Shot. - fix: Remove state_key: null from Seshat search results (#31524). Contributed by @shinaoka. - Fix user pill deserialisation (#31947). Contributed by @t3chguy.

Pin: `winget install --id Element.Element --version 1.12.11 --exact`

#### 1.12.10 — 2026-02-10

- x64 exe (user): Element Setup 1.12.10.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.10.exe
  - sha256: 18da7b0ebfec02c3f84ed2d1d91b579bb3c378355c75aa5f22d1008677f5bc25
- arm64 exe (user): Element Setup 1.12.10.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.10.exe
  - sha256: db41a22a40cbe6d5d8b18cec24f87cb4a7358173cf8b772a05042f3838f4f19f
Release notes: ✨ Features - Generate badge icon for macOS DMG (#2809). Contributed by @t3chguy. - Support additional_creators in /upgraderoom (MSC4289) (#31934). Contributed by @andybalaam. - Update room header icon for world_readable rooms (#31915). Contributed by @richvdh. - Show an icon in the room header for shared history (#31879). Contributed by @richvdh. - Remove "history may be shared" banner. (#31881). Contributed by @kaylendog. - Allow dismissing 'Key storage out of sync' temporarily (#31455). Contributed by @andybalaam. - Add resolutions entry for matrix-widget-api to package.json (#31851). Contributed by @toger5. - Improve visibility under contrast control mode (#31847). Contributed by @t3chguy. - Unread Sorting - Add option for sorting in OptionsMenuView (#31754). Contributed by @MidhunSureshR. - Unread sorting - Implement sorter and use it in the room list store (#31723). Contributed by @MidhunSureshR. - Allow Element Call widgets to receive sticky events (#31843). Contributed by @robintown. - Improve icon rendering accessibility (#31791). Contributed by @t3chguy. - Add message preview toggle to room list header option (#31821). Contributed by @florianduros. 🐛 Bug Fixes - [Backport staging] Fix room list not being cleared (#32438). Contributed by @RiotRobot. - Fix failure to update room info panel on joinrule change (#31938). Contributed by @richvdh. - Throttle space notification state calculation (#31922). Contributed by @dbkr. - Fix emoji verification responsive layout (#31899). Contributed by @t3chguy. - Add patch for linkify to fix doctype handling (#31900). Contributed by @dbkr. - Fix rooms with no messages appearing at the top of the room list (#31798). Contributed by @MidhunSureshR. - Fix room list menu flashes when menu is closed (#31868). Contributed by @florianduros. - Message preview toggle is inverted in room list header (#31865). Contributed by @florianduros. - Fix duplicate toasts appearing for the same call if two events appear. (#31693). Contributed by @Half-Shot. - Fix ability to send rageshake during session restore failure (#31848). Contributed by @t3chguy. - Fix mis-alignment of Threads right panel title (#31849). Contributed by @t3chguy. - Unset buttons does not include color inherit (#31801). Contributed by @Philldomd.

Pin: `winget install --id Element.Element --version 1.12.10 --exact`

#### 1.12.9 — 2026-01-27

- x64 exe (user): Element Setup 1.12.9.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.9.exe
  - sha256: b54548e980b5ac8f1b475443d32d970841929c6ec69388df0e52820545bd11b6
- arm64 exe (user): Element Setup 1.12.9.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.9.exe
  - sha256: c5e3da45c2be2a6eb0262ee4ce97c889311e7e8574ec7429c44741c4d71d6e96
Release notes: ✨ Features - Update macOS icon to use Icon Composer format (#2791). Contributed by @t3chguy. - Update macOS icon (#2787). Contributed by @t3chguy. - Update app icons (#2778). Contributed by @t3chguy. - Allow local log downloads when a rageshake URL is not configured. (#31716). Contributed by @Half-Shot. - Improve icon rendering accessibility (#31776). Contributed by @t3chguy. - Show "Bob shared this message" on messages shared via MSC4268 (#31684). Contributed by @richvdh. - Update the way we render icons for accessibility (#31731). Contributed by @t3chguy. - Switch from css masks to rendering svg (#31681). Contributed by @t3chguy. - Support for stable MSC4191 account management action parameter (#31701). Contributed by @hughns. - Support for stable m.oauth UIA stage from MSC4312 (#31704). Contributed by @hughns. - Switch to Compound icons to replace old icons (#31667). Contributed by @t3chguy. - Switch from svg masks to svg rendering in more places (#31652). Contributed by @t3chguy. - Switch from svg masks to svg rendering in more places (#31650). Contributed by @t3chguy. - Update notification icons using Compound icons (#31671). Contributed by @t3chguy. - Memoise ListView context (#31668). Contributed by @t3chguy. - Switch emoji picker to use emoji for header icons (#31645). Contributed by @t3chguy. - Replace icons with Compound alternatives (#31642). Contributed by @t3chguy. 🐛 Bug Fixes - Update macOS icon to use Icon Composer format (#2791). Contributed by @t3chguy. - Fix not starting on linux when user is not in /etc/passwd (#2783). Contributed by @nim65s. - Fix avatar decorations in thread activity centre not being atop avatar (#31789). Contributed by @t3chguy. - Fix room settings roles tab getting confused if power level change fails (#31768). Contributed by @t3chguy. - Custom themes now import highlights in css (#31758). Contributed by @Philldomd. - Use correct translation for url preview settings (#31740). Contributed by @florianduros. - Fix error shown if accepting a 3pid invite (#31735). Contributed by @dbkr. - Ensure correct focus configuration for Element Call before allowing users to call. (#31490). Contributed by @Half-Shot. - Fix emoji font in emoji picker header buttons (#31679). Contributed by @t3chguy. - fix flaky test by waiting for chat panel before counting messages (#31633). Contributed by @BillCarsonFr.

Pin: `winget install --id Element.Element --version 1.12.9 --exact`

#### 1.12.8 — 2026-01-13

- x64 exe (user): Element Setup 1.12.8.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.8.exe
  - sha256: 9d935a677ade85f8c67a6bd1523aaa9053463637326eb5d1ea59a4a2a134f26b
- arm64 exe (user): Element Setup 1.12.8.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.8.exe
  - sha256: 92749b2eeb432381e3398715bac61e2ebec8277712de0cd66bb3943e55e01fe6
Release notes: 🦖 Deprecations - Remove element_call.participant_limit config and associated code. (#31638). Contributed by @Half-Shot. ✨ Features - Switch to rendering svg icons rather than masking them (#31557). Contributed by @t3chguy. - Update history visibility UX (#31635). Contributed by @langleyd. - Show correct call icon for joining a call. (#31489). Contributed by @Half-Shot. - Update StopGapWidgetDriver to support sticky events (#31205). Contributed by @Half-Shot. - Remove release announcements for new sounds & room list (#31544). Contributed by @t3chguy. - Add button to restore from backup into /devtools (#31581). Contributed by @mxandreas. - Switch to non-solid compound icons for room settings & composer (#31561). Contributed by @t3chguy. - Support encrypted state events MSC4362 (#31513). Contributed by @andybalaam. - Update prop type & documentation for HistoryVisibleBanner and VM. (#31545). Contributed by @kaylendog. - Switch to Compound icons in more places (#31560). Contributed by @t3chguy. - Switch to rendering svg icons rather than masking them (#31550). Contributed by @t3chguy. - Make AccessibleButton contrast control compatible (#31308). Contributed by @t3chguy. - Switch to compound-design-tokens for platform icons (#31543). Contributed by @t3chguy. - Switch to rendering svg icons rather than masking them (#31531). Contributed by @t3chguy. - Switch to rendering svg icons rather than css masking (#31517). Contributed by @t3chguy. - Auto approve matrix rtc member event (m.rtc.member) (sticky events) (#31452). Contributed by @toger5. - Size Autocomplete relative to the RoomView height rather than the viewport height (#31425). Contributed by @langleyd. - Implement UI for history visibility acknowledgement. (#31156). Contributed by @kaylendog. - Export disposing hook from package (#31498). Contributed by @MidhunSureshR. - Change header-panel-bg-hover to use var(--cpd-color-bg-action-secondary-hovered) for better custom theming (#31457). Contributed by @th0mcat. - Improve icon rendering in iconized context menu (#31458). Contributed by @t3chguy. 🐛 Bug Fixes - Fix Ctrl+Q not closing the app (#2749). Contributed by @MidhunSureshR. - [Backport staging] Fix space settings visibility tab crashing (#31705). Contributed by @RiotRobot. - Fix expand/collapse reply preview not showing in some cases (#31639). Contributed by @t3chguy. - Fix bundled font or custom font not applied after theme switch (#31591). Contributed by @florianduros. - Add ol override CSS for markdown-body (#31618). Contributed by @niamu. - Fix reaction left margin in timeline card (#31625). Contributed by @t3chguy. - Open right panel timeline when jumping to event with maximised widget (#31626). Contributed by @t3chguy. - Fix Compound Link elements not having an underline. (#31583). Contributed by @Half-Shot. - Recalculate mentions metadata of forwarded messages based on message body (#31193). Contributed by @twassman. - Fix Room Preview Card Layout (#31611). Contributed by @germain-gg. - Fix: WidgetMessaging not properly closed causing side effects and bugs (#31598). Contributed by @BillCarsonFr. - Handle cross-signing keys missing locally and/or from secret storage (#31367). Contributed by @uhoreg. - fix: Allow wrapping in Banner component. (#31532). Contributed by @kaylendog. - Update algorithm for history visible banner. (#31577). Contributed by @kaylendog. - Fix styling issue when using EW modules (#31533). Contributed by @florianduros. - Prevent history visible banner from displaying in threads. (#31535). Contributed by @kaylendog. - Make the feedback icon be the right color in dark theme (#31527). Contributed by @robintown.

Pin: `winget install --id Element.Element --version 1.12.8 --exact`

#### 1.12.7 — 2025-12-16

- x64 exe (user): Element Setup 1.12.7.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.7.exe
  - sha256: 4e4ff491b8da753593c104d88da1c0c6834e4c11986ad7c13cf55e9d5f8da198
- arm64 exe (user): Element Setup 1.12.7.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.7.exe
  - sha256: 2fbcffbf4045954b33b5c33c9617d6fe19d670fd48c01fcaadbfdc21ad3af0a9
Release notes: ✨ Features - Replace legacy icons with compound (#31424). Contributed by @t3chguy. - Update polls UX to match EX Mobile and improve accessibility (#31245). Contributed by @langleyd. - Add option to enable read receipt and marker when user interact with UI (#31353). Contributed by @florianduros. - Introduce a hook to auto dispose view models (#31178). Contributed by @MidhunSureshR. - Update settings toggles to use consistent design across app. (#30169). Contributed by @Half-Shot. - Add ability to the room view to hide widgets (#31400). Contributed by @langleyd. - call: Pass the echo cancellation and noise suppression settings to EC (#31317). Contributed by @BillCarsonFr. - Tweak rendering of icons for a11y (#31358). Contributed by @t3chguy. - Implement new renderNotificationDecoration from module API (#31389). Contributed by @MidhunSureshR. - Replace more icons with compound (#31381). Contributed by @t3chguy. - Replace more icons with compound (#31378). Contributed by @t3chguy. - <Banner/>: Hide Dismiss button if onClose handler is not provided. (#31362). Contributed by @kaylendog. - Replace batch of legacy icons with compound design tokens (#31360). Contributed by @t3chguy. - MSC4380: Invite blocking (#31268). Contributed by @richvdh. - Tweak rendering of icons for accessibility (#31346). Contributed by @t3chguy. - Implement a shared Banner component. (#31266). Contributed by @kaylendog. - Allow the Login screen to use the dark theme (#31293). Contributed by @richvdh. 🐛 Bug Fixes - [Backport staging] Amend e2e normal icon from lock-solid to info (#31559). Contributed by @t3chguy. - [Backport staging] Fix CSS specificity causing icon issues in e2e verification (#31548). Contributed by @RiotRobot. - [Backport staging] Fix e2e icons in CompleteSecurity & SetupEncryptionBody (#31522). Contributed by @RiotRobot. - [Backport staging] Remove an extra paragraph in advanced room settings (#31511). Contributed by @RiotRobot. - [Backport staging] Don't show the key storage out of sync toast when backup disabled (#31507). Contributed by @RiotRobot. - Fix composer button visibility in contrast colour mode (#31255). Contributed by @t3chguy. - Ensure correct room version is used and permissions are appropriately sert when creating rooms (#31464). Contributed by @Half-Shot. - Fix e2e icon rendering (#31454). Contributed by @t3chguy. - EventIndexer: ensure we add initial checkpoints when the db is first opened (#31448). Contributed by @richvdh. - Fix /join <alias> command failing due to race condition (#31433). Contributed by @MidhunSureshR. - MessageEventIndexDialog: distinguish indexed rooms (#31436). Contributed by @richvdh. - Move EditInPlace out of Form (Fixes: reloading EW on EC url update) (#31434). Contributed by @toger5. - Fixes issue where cursor would jump to the beginning of the input field after converting Japanese text and pressing Tab (#31432). Contributed by @shinaoka. - Fix widgets getting stuck in loading states (#31314). Contributed by @robintown. - Room list: fix room options remaining on room item after mouse leaving (#31414). Contributed by @florianduros. - Make RoomList.showMessagePreview configurable by config.json (#31419). Contributed by @florianduros. - Fix bug which caused app not to load correctly when force_verification is enabled (#31265). Contributed by @richvdh. - Room list: display the menu option on the room list item when clicked/opened (#31380). Contributed by @florianduros. - Fix handling of SVGs (#31359). Contributed by @t3chguy. - Fix word wrapping in expanded left panel buttons (#31377). Contributed by @t3chguy. - Fix aspect ratio on error view background (#31361). Contributed by @t3chguy. - Fix failure to request persistent storage perms (#31299). Contributed by @richvdh. - Fix calls sometimes not knowing that they're presented (#31313). Contributed by @robintown.

Pin: `winget install --id Element.Element --version 1.12.7 --exact`

#### 1.12.6 — 2025-12-03

- x64 exe (user): Element Setup 1.12.6.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.6.exe
  - sha256: 2b2b9c8cff65a9cee4b34858e20110b4fae644f2d92e74e423cea26b78e0d718
- arm64 exe (user): Element Setup 1.12.6.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.6.exe
  - sha256: 573ae18bc98a2e5859bac715da64530a0f9f9b5beb59c046cf2a1e37a528218a
Release notes: This release fixes a bug where 1:1 calling was incorrectly not available if no Element Call focus was set. 🐛 Bug Fixes - Add option to pick call options for voice calls. (#31413).

Pin: `winget install --id Element.Element --version 1.12.6 --exact`

#### 1.12.5 — 2025-12-02

- x64 exe (user): Element Setup 1.12.5.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.5.exe
  - sha256: a7c48cb25784efd7f0ee8cfb0418e7ac0f8fb460f049a27c99f61a647a0ad14b
- arm64 exe (user): Element Setup 1.12.5.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.5.exe
  - sha256: 9c6cd2f3bb2692b5f1f1b8ce541ec6de621d1f74d801e97ba7470bef281f22c5
Release notes: ✨ Features - Update Emojibase to v17 (#31307). Contributed by @t3chguy. - Adds tooltip for compose menu (#31122). Contributed by @byteplow. - Add option to hide pinned message banner in room view (#31296). Contributed by @florianduros. - update twemoji to not monochromise emoji with BLACK in their name (#31281). Contributed by @ara4n. - upgrade to twemoji 17.0.2 and fix #14695 (#31267). Contributed by @ara4n. - Add options to hide right panel in room view (#31252). Contributed by @florianduros. - Delayed event management: split endpoints, no auth (#31183). Contributed by @AndrewFerr. - Support using Element Call for voice calls in DMs (#30817). Contributed by @Half-Shot. - Improve screen reader accessibility of auth pages (#31236). Contributed by @t3chguy. - Add posthog tracking for key backup toasts (#31195). Contributed by @Half-Shot. 🐛 Bug Fixes - Return to using Fira Code as the default monospace font (#31302). Contributed by @ara4n. - Fix case of home screen being displayed erroneously (#31301). Contributed by @langleyd. - Fix message edition and reply when multiple rooms at displayed the same moment (#31280). Contributed by @florianduros. - Key storage out of sync: reset key backup when needed (#31279). Contributed by @uhoreg. - Fix invalid events crashing entire room rather than just their tile (#31256). Contributed by @t3chguy. - Fix expand button of space panel getting cut off at the edges (#31259). Contributed by @MidhunSureshR. - Fix pill buttons in dialogs (#31246). Contributed by @dbkr. - Fix blank sections at the top and bottom of the member list when scrolling (#31198). Contributed by @langleyd. - Fix emoji category selection with keyboard (#31162). Contributed by @langleyd.

Pin: `winget install --id Element.Element --version 1.12.5 --exact`

#### 1.12.4 — 2025-11-18

- x64 exe (user): Element Setup 1.12.4.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.4.exe
  - sha256: 7d5b504b67567dbd62508447618427c16981503df11f062ea0f12a3879ccd1b8
- arm64 exe (user): Element Setup 1.12.4.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.4.exe
  - sha256: b4a35e8255f95bfd58b4bcc232436b3a6675994fca7f4b61f904ef37eb069efb
Release notes: ✨ Features - Update nightly and release builds to use the dedicated subdomain for 'bug_report_endpoint_url' (#2677). Contributed by @benbz. - Apply aria-hidden to emoji in SAS verification (#31204). Contributed by @t3chguy. - Add options to hide header and composer of room view for the module api (#31095). Contributed by @florianduros. - Experimental Module API Additions (#30863). Contributed by @dbkr. - Change polls to use fieldset/legend markup (#31160). Contributed by @langleyd. - Use compound Button styles for Jitsi button (#31159). Contributed by @Half-Shot. - Add FocusLock to emoji picker (#31146). Contributed by @langleyd. - Move room name, avatar, and topic to IOpts. (#30981). Contributed by @kaylendog. - Add a devtool for looking at users and their devices (#30983). Contributed by @uhoreg. 🐛 Bug Fixes - Fix room list handling of membership changes (#31197). Contributed by @t3chguy. - Fix room list unable to be resized when displayed after a module (#31186). Contributed by @florianduros. - Inhibit keyboard highlights in dialogs when effector is not in focus (#31181). Contributed by @t3chguy. - Strip mentions from forwarded messages (#30884). Contributed by @twassman. - Don't allow pin or edit of messages with a send status (#31158). Contributed by @langleyd. - Hide room header buttons if the room hasn't been created yet. (#31092). Contributed by @Half-Shot. - Fix screen readers not indicating the emoji picker search field is focused. (#31128). Contributed by @langleyd. - Fix emoji picker highlight missing when not active element (#31148). Contributed by @t3chguy. - Add relevant aria attribute for selected emoji in the emoji picker (#31125). Contributed by @t3chguy. - Fix tooltips within context menu portals being unreliable (#31129). Contributed by @t3chguy. - Avoid excessive re-render of room list and member list (#31131). Contributed by @florianduros. - Make emoji picker height responsive. (#31130). Contributed by @langleyd. - Emoji Picker: Focused emoji does not move with the arrow keys (#30893). Contributed by @langleyd. - Fix audio player seek bar position (#31127). Contributed by @florianduros. - Add aria label to emoji picker search (#31126). Contributed by @langleyd.

Pin: `winget install --id Element.Element --version 1.12.4 --exact`

#### 1.12.3 — 2025-11-04

- x64 exe (user): Element Setup 1.12.3.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.3.exe
  - sha256: 6a00ce497cbac40b7d3b4855d28ebd14b12b87ed47dcf3349645bc86d9690a5f
- arm64 exe (user): Element Setup 1.12.3.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.3.exe
  - sha256: 89563b80781cfba5a2eae1cf899387ec8a755cd647d0dc5a09a7159cbce3b4a1
Release notes: 🦖 Deprecations - Remove allowVoipWithNoMedia feature flag (#31087). Contributed by @Half-Shot. ✨ Features - Change module API to be an instance getter (#31025). Contributed by @dbkr. 🐛 Bug Fixes - Wait for Electron to be ready before we fire syntax error dialog (#2659). Contributed by @t3chguy. - Show hover elements when keyboard focus is within an event tile (#31078). Contributed by @t3chguy. - Ensure toolbar navigation pattern works in MessageActionBar (#31080). Contributed by @t3chguy. - Ensure sent markers are hidden when showing thread summary. (#31076). Contributed by @Half-Shot. - Fix translation in dev mode (#31045). Contributed by @florianduros. - Fix sort order in space hierarchy (#30975). Contributed by @t3chguy. - New Room list: don't display message preview of thread (#31043). Contributed by @florianduros. - Revert "A11y: move focus to right panel when opened" (#30999). Contributed by @florianduros. - Fix highlights in messages (or search results) breaking links (#30264). Contributed by @bojidar-bg. - Add prepare script (#31030). Contributed by @dbkr. - Fix html exports by adding SDKContext (#30987). Contributed by @t3chguy.

Pin: `winget install --id Element.Element --version 1.12.3 --exact`

#### 1.12.2 — 2025-10-21

- x64 exe (user): Element Setup 1.12.2.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.2.exe
  - sha256: b12a61b2904486d09f14d6ba52b775681d74218d368ed29119201ca1ef1f2ea7
- arm64 exe (user): Element Setup 1.12.2.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.2.exe
  - sha256: 31005b4aafcc78d9c4a242a214291b50e4f8749879c8af6c11f91ccc19ea92ad
Release notes: ✨ Features - Allow Desktop app to be auto-started minimised or focused (#2622). Contributed by @t3chguy. - Room List: Extend the viewport to avoid so many black spots when scrolling the room list (#30867). Contributed by @langleyd. - Hide calling buttons in room header before a room is created (#30816). Contributed by @Half-Shot. - Improve invite dialog ui - Part 2 (#30836). Contributed by @florianduros. 🐛 Bug Fixes - Fix hardlinks appearing in and breaking deb packages (#2609). Contributed by @t3chguy. - Fix platform settings race condition and make auto-launch tri-state (#30977). Contributed by @t3chguy. - Fix: member count in header and member list (#30982). Contributed by @florianduros. - Fix duration of voice message in timeline (#30973). Contributed by @florianduros. - Fix voice notes rendering at 00:00 when playback had not begun. (#30961). Contributed by @Half-Shot. - Improve handling of animated images, add support for AVIF animations (#30932). Contributed by @t3chguy. - Update key storage toggle when key storage status changes (#30934). Contributed by @uhoreg. - Fix jitsi widget popout (#30908). Contributed by @dbkr. - Improve keyboard navigation on invite dialog (#30930). Contributed by @florianduros. - Prefer UIA flows with supported UIA stages (#30926). Contributed by @richvdh. - Enhance accessibility of dropdown (#30928). Contributed by @florianduros. - Improve accessibility of the `<AvatarSetting> component (#30907). Contributed by @MidhunSureshR.

Pin: `winget install --id Element.Element --version 1.12.2 --exact`

#### 1.12.1 — 2025-10-07

- x64 exe (user): Element Setup 1.12.1.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.1.exe
  - sha256: ad6636eb6ee70102b8d6298a66588d9e12508ca5f841202faa68ded22ed617c2
- arm64 exe (user): Element Setup 1.12.1.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.1.exe
  - sha256: 076fff620e67fff704b450843cd6fe187daca268c1a3d2a887fd3af2476522b7
Release notes: ✨ Features - New Room List: Change the order of filters to match those on mobile (#30905). Contributed by @langleyd. - New Room List: Don't clear filters on space change (#30903). Contributed by @langleyd. - Add release announcement for the sounds (#30900). Contributed by @langleyd. - Rich Text Editor: Add emoji suggestion support (#30873). Contributed by @langleyd. - feat: Disable session lock when running in element-desktop (#30643). Contributed by @kaylendog. - Improve invite dialog ui - Part 1 (#30764). Contributed by @florianduros. - Update Message Sound for Element (#30804). Contributed by @beatdemon. - Add new and improved ringtone (#30761). Contributed by @Half-Shot. - Disable RTE formatting buttons when the content contains a slash command (#30802). Contributed by @langleyd. 🐛 Bug Fixes - New Room List: Improve robustness of keyboard navigation (#30888). Contributed by @langleyd. - Fix a11y issue on list in invite dialog (#30878). Contributed by @florianduros. - Switch Export and Import Icons to match intuition (#30805). Contributed by @micartey. - Hide breadcrumb option when new room list is enabled (#30869). Contributed by @florianduros. - Avoid creating multiple call objects for the same widget (#30839). Contributed by @robintown. - Add a test for #29882, which is fixed by matrix-org/matrix-js-sdk#5016 (#30835). Contributed by @andybalaam. - fix: use help_encryption_url of config instead of hardcoded https://element.io/help#encryption5 (#30746). Contributed by @florianduros. - Fix html export when feature_jump_to_date is enabled (#30828). Contributed by @langleyd. - Fix #30439: "Forgot recovery key" should go to "reset" (#30771). Contributed by @andybalaam.

Pin: `winget install --id Element.Element --version 1.12.1 --exact`

#### 1.12.0 — 2025-09-23

- x64 exe (user): Element Setup 1.12.0.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.12.0.exe
  - sha256: 2a59508d5b2a4dd56c65782bdf5791301f151accfab5aca42d29ff97efbca27c
- arm64 exe (user): Element Setup 1.12.0.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.12.0.exe
  - sha256: 93bd073edf593f5f37fc69a33ed45e3a32a256b389a3f78b14a70902249d7aa9
Release notes: 🦖 Deprecations - Remove remaining support for outdated .well-known settings (#30702). Contributed by @richvdh. ✨ Features - Automatically select first source for desktop capture under Wayland (#2526). Contributed by @byquanton. - Add decline button to call notification toast (use new notification event) (#30729). Contributed by @toger5. - Use the new room list by default (#30640). Contributed by @langleyd. - "Verify this device" redesign (#30596). Contributed by @uhoreg. - Set Element Call "intents" when starting and answering DM calls. (#30730). Contributed by @Half-Shot. - Add axe compliance for new room list (#30700). Contributed by @langleyd. - Stop ringing and remove toast if another device answers a RTC call. (#30728). Contributed by @Half-Shot. - Automatically adjust history visibility when making a room private (#30713). Contributed by @Half-Shot. - Release announcement for new room list (#30675). Contributed by @dbkr. 🐛 Bug Fixes - Update Electron to v38.1.0 to fix Kernel crash on multi-GPU systems (#2544). Contributed by @Arcitec. - Fix Confirm your identity buttons being unclickable (#2554). Contributed by @dbkr. - Ensure dropdown is not a drag element on macOS (#2540). Contributed by @t3chguy. - [Backport staging] Room list: make the filter resize correctly (#30795). Contributed by @RiotRobot. - [Backport staging] Avoid flicker of the room list filter on resize (#30794). Contributed by @RiotRobot. - Don't show release announcements while toasts are displayed (#30770). Contributed by @dbkr. - Fix enabling key backup not working if there is an untrusted key backup (#30707). Contributed by @Half-Shot. - Force preload to be false when setting an intent on an Element Call. (#30759). Contributed by @Half-Shot. - Fix handling of 413 server response when uploading media (#30737). Contributed by @hughns. - Make landmark navigation work with new room list (#30747). Contributed by @dbkr. - Prevent voice message from displaying spurious errors (#30736). Contributed by @florianduros. - Align default avatar and fix colors in composer pills (#30739). Contributed by @florianduros. - Use configured URL for link to desktop app in message search settings (#30742). Contributed by @t3chguy. - Fix history visibility when creating space rooms (#30745). Contributed by @dbkr. - Check HTML-encoded quotes when handling translations for embedded pages (such as welcome.html) (#30743). Contributed by @Half-Shot. - Fix local room encryption status always not enabled (#30461). Contributed by @BillCarsonFr. - fix: make url in topic in room intro clickable (#30686). Contributed by @florianduros. - Block change recovery key button while a change is ongoing. (#30664). Contributed by @Half-Shot. - Hide advanced settings during room creation when UIFeature.advancedSettings=false (#30684). Contributed by @florianduros. - A11y: improve accessibility of pinned messages (#30558). Contributed by @florianduros.

Pin: `winget install --id Element.Element --version 1.12.0 --exact`

#### 1.11.112 — 2025-09-16

- x64 exe (user): Element Setup 1.11.112.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.11.112.exe
  - sha256: a920fd0b253c119b0750a60f4f965ebf728d24529c6e2df0b4233ac63010f160
- arm64 exe (user): Element Setup 1.11.112.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.11.112.exe
  - sha256: e83dd5f25ebf860e38ad8ef35e7e3358d9669144384f2732a386aec138fbfe7d
Release notes: Fix CVE-2025-59161 / GHSA-m6c8-98f4-75rr This is the last release compatible with macOS Big Sur. It will not update further. Big Sur is End of Life for almost 2 years and the next version of Electron crashes upon startup on Big Sur. ✨ Features - [Backport staging] Handle unsupported macOS versions better (#2555). Contributed by @RiotRobot.

Pin: `winget install --id Element.Element --version 1.11.112 --exact`

#### 1.11.111 — 2025-09-10

- x64 exe (user): Element Setup 1.11.111.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.11.111.exe
  - sha256: bc47eb34aee2f28c23590d407e65fd49f4123b0bba753556dbe4b9de2b59118e
- arm64 exe (user): Element Setup 1.11.111.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.11.111.exe
  - sha256: 659963cb595a8386129691d1b3730dcbb950b6d24e9a6c27ded5e8d0112664a2
Release notes: ✨ Features - Do not hide media from your own user by default (#29797). Contributed by @Half-Shot. - Remember whether sidebar is shown for calls when switching rooms (#30262). Contributed by @bojidar-bg. - Open the proper integration settings on integrations disabled error (#30538). Contributed by @Half-Shot. - Show a "progress" dialog while invites are being sent (#30561). Contributed by @richvdh. - Move the room list to the new ListView(backed by react-virtuoso) (#30515). Contributed by @langleyd. 🐛 Bug Fixes - [Backport staging] Ensure container starts if it is mounted with an empty /modules directory. (#30705). Contributed by @RiotRobot. - Fix room joining over federation not specifying vias or using aliases (#30641). Contributed by @t3chguy. - Fix stable-suffixed MSC4133 support (#30649). Contributed by @dbkr. - Fix i18n of message when a setting is disabled (#30646). Contributed by @dbkr. - ListView should not handle the arrow keys if there is a modifier applied (#30633). Contributed by @langleyd. - Make BaseDialog's div keyboard focusable and fix test. (#30631). Contributed by @langleyd. - Fix: Allow triple-click text selection to flow around pills (#30349). Contributed by @AlirezaMrtz. - Watch for a 'join' action to know when the call is connected (#29492). Contributed by @robintown. - Fix: add missing tooltip and aria-label to lock icon next to composer (#30623). Contributed by @florianduros. - Don't render context menu when scrolling (#30613). Contributed by @langleyd.

Pin: `winget install --id Element.Element --version 1.11.111 --exact`

#### 1.11.110 — 2025-08-27

- x64 exe (user): Element Setup 1.11.110.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.11.110.exe
  - sha256: 864a2bddd582111a1798da22cfe4f04e5f9f9cc80ecea313ee7df8d6053fbf1c
- arm64 exe (user): Element Setup 1.11.110.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.11.110.exe
  - sha256: 0b5ea1f222f595513a0c0881e2f3c64e3a9c7fa8e76cde1709a677c59056b2ac
Release notes: ✨ Features - Hide recovery key when re-entering it while creating or changing it (#30499). Contributed by @andybalaam. - Add ?no_universal_links=true to OIDC url so EX doesn't try to handle it (#29439). Contributed by @t3chguy. - Show a blue lock for unencrypted rooms and hide the grey shield for encrypted rooms (#30440). Contributed by @langleyd. - Add support for Module API 1.4 (#30185). Contributed by @t3chguy. - MVVM - Introduce some helpers for snapshot management (#30398). Contributed by @MidhunSureshR. 🐛 Bug Fixes - A11y: move focus to right panel when opened (#30553). Contributed by @florianduros. - Fix e2e warning icon should be white (#30539). Contributed by @florianduros. - Remove NoOneHere disabled reason. (#30524). Contributed by @toger5. - Fix downloading files with authenticated media API (#30520). Contributed by @t3chguy. - Fix call permissions check confusion around element call (#30521). Contributed by @t3chguy. - Fix line wrap around emoji verification (#30523). Contributed by @t3chguy. - Don't highlight redacted events (#30519). Contributed by @t3chguy. - Fix matrix.to links not being handled in the app (#30522). Contributed by @t3chguy. - Fix issue of new room list taking up the full width (#30459). Contributed by @langleyd. - Fix widget persistence in React development mode (#30509). Contributed by @robintown. - Fix widget initialization in React development mode (#30463). Contributed by @robintown.

Pin: `winget install --id Element.Element --version 1.11.110 --exact`

#### 1.11.109 — 2025-08-11

- x64 exe (user): Element Setup 1.11.109.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.11.109.exe
  - sha256: 76e552bd3c6c6a56e1927116f87645bf454bbcef13f6f9990bc47bf5cac365c7
- arm64 exe (user): Element Setup 1.11.109.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.11.109.exe
  - sha256: e1798ecabc3d4d67b4e521d30dfeed7dd317bc5620f7ff25c4af766a83667690
Release notes: This release supports the upcoming v12 ("hydra") Matrix room version and is necessary to view and participate in these rooms. ✨ Features - [Backport staging] Allow /upgraderoom command without developer mode enabled (#30529). Contributed by @RiotRobot. - [Backport staging] Support for creator/owner power level (#30526). Contributed by @RiotRobot. - New room list: change icon and label of menu item for to start a DM (#30470). Contributed by @florianduros. - Implement the member list with virtuoso (#29869). Contributed by @langleyd. - Add labs option for history sharing on invite (#30313). Contributed by @richvdh. - Bump wysiwyg to 2.39.0 adding support for pasting rich text content in the Rich Text Edtior (#30421). Contributed by @langleyd. - Support EventShieldReason.MISMATCHED_SENDER (#30403). Contributed by @richvdh. - Change unencrypted and public pills to blue (#30399). Contributed by @florianduros. - Change color of public room icon (#30390). Contributed by @florianduros. - Script for updating storybook screenshots (#30340). Contributed by @dbkr. - Add toggle to hide empty state in devtools (#30352). Contributed by @toger5. 🐛 Bug Fixes - [Backport staging] Use userId to filter users in non-federated rooms when showing the InviteDialog (#30537). Contributed by @RiotRobot. - [Backport staging] Catch error when encountering invalid m.room.pinned_events event (#30536). Contributed by @RiotRobot. - Update for compatibility with v12 rooms (#30452). Contributed by @dbkr. - New room list: fix tooltip on presence (#30474). Contributed by @florianduros. - New room list: add tooltip for presence and room status (#30472). Contributed by @florianduros. - Fix: Clicking on an item in the member list causes it to scroll to the top rather than show the profile view (#30455). Contributed by @langleyd. - Put the 'decrypting' tooltip back (#30446). Contributed by @dbkr. - Use server name explicitly for via. (#30362). Contributed by @Half-Shot. - fix: replace hardcoded string in poll history dialog (#30402). Contributed by @florianduros. - fix: replace hardcoded string on qr code back button (#30401). Contributed by @florianduros. - Fix color of icon button with outline (#30361). Contributed by @florianduros.

Pin: `winget install --id Element.Element --version 1.11.109 --exact`

#### 1.11.108 — 2025-07-30

- x64 exe (user): Element Setup 1.11.108.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.11.108.exe
  - sha256: 782d6a680956cbffe9df8ab72a41a37080296bad29f1671666063602f9621b6d
- arm64 exe (user): Element Setup 1.11.108.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.11.108.exe
  - sha256: f968681189ada62400ff9b7695604d5125d4ae377a96f45ff97484ad71aa17eb
Release notes: 🐛 Bug Fixes - [Backport staging] Fix downloaded attachments not being decrypted (#30434). Contributed by @RiotRobot.

Pin: `winget install --id Element.Element --version 1.11.108 --exact`

#### 1.11.107 — 2025-07-29

- x64 exe (user): Element Setup 1.11.107.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.11.107.exe
  - sha256: 4afad23daed4393988d01e639f5ae123ea7bc4ac1e64b14bec73bfb9b1309bf7
- arm64 exe (user): Element Setup 1.11.107.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.11.107.exe
  - sha256: 4e87c4dceb81834ceae97421290562520313383aac39503494a6ea1c81b9011c
Release notes: ✨ Features - Add support for overlaying notification badges on the Windows Taskbar icon. (#2443). Contributed by @Half-Shot. - Reduce macos titlebar height with the new room list and expand the existing border (#2446). Contributed by @florianduros. - Message preview should show tooltip with the full message on hover (#30265). Contributed by @MidhunSureshR. - Support rendering notification badges on platforms that do their own icon overlays (#30315). Contributed by @Half-Shot. - Add SubscriptionViewModel base class (#30297). Contributed by @dbkr. - Enhancement: Save image on CTRL+S (#30330). Contributed by @ioalexander. - Add quote functionality to MessageContextMenu (#29893) (#30323). Contributed by @AlirezaMrtz. - Initial structure for shared component views (#30216). Contributed by @dbkr. 🐛 Bug Fixes - Reduce macos titlebar height with the new room list and expand the existing border (#2446). Contributed by @florianduros. - [Backport staging] Fix e2e shield being invisible in white mode for encrypted room (#30411). Contributed by @RiotRobot. - Force ED titlebar color for new room list (#30332). Contributed by @florianduros. - Add a background color to left panel for macos titlebar in element desktop (#30328). Contributed by @florianduros. - Fix: Prevent page refresh on Enter key in right panel member search (#30312). Contributed by @AlirezaMrtz.

Pin: `winget install --id Element.Element --version 1.11.107 --exact`

#### 1.11.106 — 2025-07-15

- x64 exe (user): Element Setup 1.11.106.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.11.106.exe
  - sha256: 08091816a9a37efb30dc5c11cd537369aff2746c9f9e93e35b856c78b0a55f09
- arm64 exe (user): Element Setup 1.11.106.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.11.106.exe
  - sha256: 67addd67346376de8a683a12e7ba3994d2adb33e4ba09d66b30ee7d939f7cec9
Release notes: ✨ Features - [Backport staging] Fix e2e icon colour (#30304). Contributed by @RiotRobot. - Add support for module message hint allowDownloadingMedia (#30252). Contributed by @Half-Shot. - Update the mobile_guide page to the new design and link out to Element X by default. (#30172). Contributed by @pixlwave. - Filter settings exported when rageshaking (#30236). Contributed by @Half-Shot. - Allow Element Call to learn the room name (#30213). Contributed by @robintown. 🐛 Bug Fixes - [Backport staging] Fix missing image download button (#30322). Contributed by @RiotRobot. - Fix transparent verification checkmark in dark mode (#30235). Contributed by @Banbuii. - Fix logic in DeviceListener (#30230). Contributed by @uhoreg. - Disable file drag-and-drop if insufficient permissions (#30186). Contributed by @t3chguy.

Pin: `winget install --id Element.Element --version 1.11.106 --exact`

#### 1.11.105 — 2025-07-01

- x64 exe (user): Element Setup 1.11.105.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.11.105.exe
  - sha256: 7455255d33f32d6b36655b46a1c36205497c950dad6552f8acbc8fd21a976be8
- arm64 exe (user): Element Setup 1.11.105.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.11.105.exe
  - sha256: ea3160c894e3adaf5884dbc33c720f46893b11dadbc302d3e9b8405fbefde4d0
Release notes: ✨ Features - Add support for migrating to kwallet6 (#2390). Contributed by @t3chguy. - New room list: add context menu to room list item (#29952). Contributed by @florianduros. - Support for custom message components via Module API (#30074). Contributed by @Half-Shot. - Prompt users to set up recovery (#30075). Contributed by @uhoreg. - Update IconButton colors (#30124). Contributed by @florianduros. - New room list: filter list can be collapsed (#29992). Contributed by @florianduros. - Show EmptyRoomListView when low priority filter matches zero rooms (#30122). Contributed by @MidhunSureshR. 🐛 Bug Fixes - Fix element-desktop-ssoid profile deeplinking for OIDC (#2396). Contributed by @t3chguy. - Add support for migrating to kwallet6 (#2390). Contributed by @t3chguy. - Fix untranslatable string "People" in notifications beta (#30165). Contributed by @t3chguy. - Force verification even after logging in via delegate (#30141). Contributed by @andybalaam. - Hide add integrations button based on UIComponent.AddIntegrations (#30140). Contributed by @t3chguy. - Use nav for new room list and label sections (#30134). Contributed by @dbkr. - Spacestore should emit event after rebuilding home space (#30132). Contributed by @MidhunSureshR. - Handle m.room.pinned_events being invalid (#30129). Contributed by @t3chguy.

Pin: `winget install --id Element.Element --version 1.11.105 --exact`

#### 1.11.104 — 2025-06-17

- x64 exe (user): Element Setup 1.11.104.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.11.104.exe
  - sha256: 20fc8b6c0f9de186bd7caca09c8ee4c6add7193d26e076fc74de74ec385efbdd
- arm64 exe (user): Element Setup 1.11.104.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.11.104.exe
  - sha256: c9d8ca37c839ba3f411c17ea4b214fc27b71a2098294e818dce76004a7691132
Release notes: ✨ Features - Update the mobile_guide page to the new design. (#30006). Contributed by @pixlwave. - Provide a devtool for manually verifying other devices (#30094). Contributed by @andybalaam. - Implement MSC4155: Invite filtering (#29603). Contributed by @Half-Shot. - Add low priority avatar decoration to room tile (#30065). Contributed by @MidhunSureshR. - Add ability to prevent window content being captured by other apps (Desktop) (#30098). Contributed by @t3chguy. - New room list: move message preview in user settings (#30023). Contributed by @florianduros. - New room list: change room options icon (#30029). Contributed by @florianduros. - RoomListStore: Sort low priority rooms to the bottom of the list (#30070). Contributed by @MidhunSureshR. - Add low priority filter pill to the room list UI (#30060). Contributed by @MidhunSureshR. - New room list: remove color gradient in space panel (#29721). Contributed by @florianduros. - /share?msg=foo endpoint using forward message dialog (#29874). Contributed by @ara4n. 🐛 Bug Fixes - Fix restart loop in safeStorage (#2373). Contributed by @dbkr. - Do not send empty auth when setting up cross-signing keys (#29914). Contributed by @gnieto. - Settings: flip local video feed by default (#29501). Contributed by @jbtrystram. - AccessSecretStorageDialog: various fixes (#30093). Contributed by @richvdh. - AccessSecretStorageDialog: fix inability to enter recovery key (#30090). Contributed by @richvdh. - Fix failure to upload thumbnail causing image to send as file (#30086). Contributed by @t3chguy. - Low priority menu item should be a toggle (#30071). Contributed by @MidhunSureshR. - Add sanity checks to prevent users from ignoring themselves (#30079). Contributed by @MidhunSureshR. - Fix issue with duplicate images (#30073). Contributed by @fatlewis. - Handle errors returned from Seshat (#30083). Contributed by @richvdh.

Pin: `winget install --id Element.Element --version 1.11.104 --exact`

#### 1.11.103 — 2025-06-10

- x64 exe (user): Element Setup 1.11.103.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.11.103.exe
  - sha256: 2f37919d493e5d3f7e15ec52fd0dab11d0f8cfd123e23a3424d6c873b43569ac
- arm64 exe (user): Element Setup 1.11.103.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.11.103.exe
  - sha256: 312db3a59f2a86127f7f9c06f72373e9559acc71245122b8ea47c0b21f53c373
Release notes: 🐛 Bug Fixes - Check the sender of an event matches owner of session, preventing sender spoofing by homeserver owners. 13c1d20 (High, GHSA-x958-rvg6-956w).

Pin: `winget install --id Element.Element --version 1.11.103 --exact`

#### 1.11.102 — 2025-06-03

- x64 exe (user): Element Setup 1.11.102.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.11.102.exe
  - sha256: 8762d0f7741864a67547f60908a458a8fa6e8280c0ff1890306894dfd7dc376f
- arm64 exe (user): Element Setup 1.11.102.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.11.102.exe
  - sha256: 721f076c0005237418c951b7f70da0185cb7fdafbbcbd06d6a09d5a32620f502
Release notes: ✨ Features - Support build-time specified protocol scheme for oidc callback (#2285). Contributed by @t3chguy. - EW: Modernize the recovery key input modal (#29819). Contributed by @uhoreg. - New room list: move secondary filters into primary filters (#29972). Contributed by @florianduros. - Prompt the user when key storage is unexpectedly off (#29912). Contributed by @andybalaam. - New room list: move sort menu in room list header (#29983). Contributed by @florianduros. - New room list: rework spacing of room list item (#29965). Contributed by @florianduros. - RLS: Remove forgotten room from skiplist (#29933). Contributed by @MidhunSureshR. - Add room list sorting (#29951). Contributed by @dbkr. - Don't use the minimised width(68px) on the new room list (#29778). Contributed by @langleyd. 🐛 Bug Fixes - Enable plain text encryption before checking if encryption is available (#2343). Contributed by @MidhunSureshR. - Enable plain text encryption early if we actually mean to use basic_text as backend (#2341). Contributed by @MidhunSureshR. - [Backport staging] Close call options popup menu when option has been selected (#30054). Contributed by @RiotRobot. - RoomListStoreV3: Only add new rooms that pass VisibilityProvider check (#29974). Contributed by @MidhunSureshR. - Re-order primary filters (#29957). Contributed by @dbkr. - Fix leaky CSS adding ! to all H1 elements (#29964). Contributed by @t3chguy. - Fix extensions panel style (#29273). Contributed by @langleyd. - Fix state events being hidden from widgets in read_events actions (#29954). Contributed by @robintown. - Remove old filter test (#29963). Contributed by @dbkr.

Pin: `winget install --id Element.Element --version 1.11.102 --exact`

#### 1.11.101 — 2025-05-20

- x64 exe (user): Element Setup 1.11.101.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.11.101.exe
  - sha256: 4bf83b4d2c7dd1e262f9720a4152ef8721cef25acd1e86ce92daba58140519fa
- arm64 exe (user): Element Setup 1.11.101.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.11.101.exe
  - sha256: 21cbbdeac749fa6b0e538384a00487a5c67c6a431365fa106d743431a891aa8b
Release notes: ✨ Features - Migrate from keytar to safeStorage (#2227). Contributed by @t3chguy. - New room list: add keyboard navigation support (#29805). Contributed by @florianduros. - Use the JoinRuleSettings component for the guest link access prompt. (#28614). Contributed by @toger5. - Add loading state to the new room list view (#29725). Contributed by @langleyd. - Make OIDC identity reset consistent with EX (#29854). Contributed by @andybalaam. - Support error code for email / phone adding unsupported (MSC4178) (#29855). Contributed by @dbkr. - Update identity reset UI (Make consistent with EX) (#29701). Contributed by @andybalaam. - Add secondary filters to the new room list (#29818). Contributed by @dbkr. - Fix battery drain from Web Audio (#29203). Contributed by @mbachry. 🐛 Bug Fixes - Fix go home shortcut on macos and change toggle action events shortcut (#29929). Contributed by @florianduros. - New room list: fix outdated message preview when space or filter change (#29925). Contributed by @florianduros. - Stop migrating to MSC4278 if the config exists. (#29924). Contributed by @Half-Shot. - Ensure consistent download file name on download from ImageView (#29913). Contributed by @t3chguy. - Add error toast when service worker registration fails (#29895). Contributed by @t3chguy. - New Room List: Prevent old tombstoned rooms from appearing in the list (#29881). Contributed by @MidhunSureshR. - Remove lag in search field (#29885). Contributed by @florianduros. - Respect UIFeature.Voip (#29873). Contributed by @langleyd. - Allow jumping to message search from spotlight (#29850). Contributed by @t3chguy.

Pin: `winget install --id Element.Element --version 1.11.101 --exact`

#### 1.11.100 — 2025-05-06

- x64 exe (user): Element Setup 1.11.100.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.11.100.exe
  - sha256: 08d321b6255db5ca479eb6697e920480f07ae56bbb990597186b5f4f84c88ee7
- arm64 exe (user): Element Setup 1.11.100.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.11.100.exe
  - sha256: c647a04350fcb74c19088804ae07e257789adb62dc2b4f542d2c860d5fe7ed5a
Release notes: ✨ Features - Move rich topics out of labs / stabilise MSC3765 (#29817). Contributed by @Johennes. - Spell out that Element Web does *not* work on mobile. (#29211). Contributed by @ara4n. - Add message preview support to the new room list (#29784). Contributed by @dbkr. - Global configuration flag for media previews (#29582). Contributed by @Half-Shot. - New room list: add partial keyboard shortcuts support (#29783). Contributed by @florianduros. - MVVM RoomSummaryCard Topic (#29710). Contributed by @MarcWadai. - Warn on self change from settings > roles (#28926). Contributed by @MarcWadai. - New room list: new visual for invitation (#29773). Contributed by @florianduros. 🐛 Bug Fixes - Apply workaround to fix app launching on Linux (#2308). Contributed by @dbkr. - Notification fixes for Windows - AppID name was messing up handler (#2275). Contributed by @Fusseldieb. - Fix incorrect display of the user info display name (#29826). Contributed by @langleyd. - RoomListStore: Remove invite rooms on decline (#29804). Contributed by @MidhunSureshR. - Fix the buttons not being displayed with long preview text (#29811). Contributed by @dbkr. - New room list: fix missing/incorrect notification decoration (#29796). Contributed by @florianduros. - New Room List: Prevent potential scroll jump/flicker when switching spaces (#29781). Contributed by @MidhunSureshR. - New room list: fix incorrect decoration (#29770). Contributed by @florianduros.

Pin: `winget install --id Element.Element --version 1.11.100 --exact`

#### 1.11.99 — 2025-04-23

- x64 exe (user): Element Setup 1.11.99.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.11.99.exe
  - sha256: 5e85053993bf9309c0837c5c76909a78e088e4a67f3cd14833450ec4f2406dbe
- arm64 exe (user): Element Setup 1.11.99.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.11.99.exe
  - sha256: dab12ac0bbf4ecb8ce2b070e047c3aed27e237b62117e240378a3ed3e2510069
Release notes: 🐛 Bug Fixes - [Backport staging] Fix io.element.desktop protocol handler (#2281). Contributed by @RiotRobot.

Pin: `winget install --id Element.Element --version 1.11.99 --exact`

#### 1.11.97 — 2025-04-08

- x64 exe (user): Element Setup 1.11.97.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.11.97.exe
  - sha256: f74dcb4683a924ef4e651a78deb5a67033750b576bee3df3ff7ff14e07dfdab5
- arm64 exe (user): Element Setup 1.11.97.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.11.97.exe
  - sha256: 27b4d70817ce02d240dcf5e61b1e1dc8c668b9fed0c8bd46459bae4ce69bd8ed
- x86 exe (user): Element Setup 1.11.97.exe
  - url: https://packages.element.io/desktop/install/win32/ia32/Element%20Setup%201.11.97.exe
  - sha256: db9820246f71ec3d8502dbc08ae9421886cc572c897d6ae34d1edc374c9f7ca0
Release notes: Security - Fix for CVE-2025-32026 / GHSA-69q3-jg79-cg79 ✨ Features - New room list: reduce padding between avatar and room list border (#29634). Contributed by @florianduros. - Bundle Element Call with Element Web packages (#29309). Contributed by @t3chguy. - Hide an event notification if it is redacted (#29605). Contributed by @Half-Shot. - Docker: Use nginx-unprivileged as base image (#29353). Contributed by @AndrewFerr. - Switch away from nesting React trees and mangling the DOM (#29586). Contributed by @t3chguy. - New room list: add notification decoration (#29552). Contributed by @florianduros. - RoomListStore: Unread filter should match rooms that were marked as unread (#29580). Contributed by @MidhunSureshR. - Add support for hiding videos (#29496). Contributed by @Half-Shot. - Use an outline icon for the report room button (#29573). Contributed by @robintown. - Generate/load pickle key on SSO (#29568). Contributed by @Jujure. - Add report room dialog button/dialog. (#29513). Contributed by @Half-Shot. - RoomListViewModel: Make the active room sticky in the list (#29551). Contributed by @MidhunSureshR. - Replace checkboxes with Compound checkboxes, and appropriately label each checkbox. (#29363). Contributed by @Half-Shot. - New room list: add selection decoration (#29531). Contributed by @florianduros. - Simplified Sliding Sync (#28515). Contributed by @dbkr. - Add ability to hide images after clicking "show image" (#29467). Contributed by @Half-Shot. 🐛 Bug Fixes - Fix scroll issues in memberlist (#29392). Contributed by @MidhunSureshR. - Ensure clicks on spoilers do not get handled by the hidden content (#29618). Contributed by @t3chguy. - New room list: add cursor pointer on room list item (#29627). Contributed by @florianduros. - Fix missing ambiguous url tooltips on Element Desktop (#29619). Contributed by @t3chguy. - New room list: fix spacing and padding (#29607). Contributed by @florianduros. - Make fetchdep check out matching branch name (#29601). Contributed by @dbkr. - Fix MFileBody fileName not considering filename (#29589). Contributed by @t3chguy. - Fix token expiry racing with login causing wrong error to be shown (#29566). Contributed by @t3chguy. - Fix bug which caused startup to hang if the clock was wound back since a previous session (#29558). Contributed by @richvdh. - RoomListViewModel: Reset any primary filter on secondary filter change (#29562). Contributed by @MidhunSureshR. - RoomListStore: Unread filter should only filter rooms having unread counts (#29555). Contributed by @MidhunSureshR. - In force-verify mode, prevent bypassing by cancelling device verification (#29487). Contributed by @andybalaam. - Add title attribute to user identifier (#29547). Contributed by @arpitbatra123.

Pin: `winget install --id Element.Element --version 1.11.97 --exact`

#### 1.11.96 — 2025-03-25

- x64 exe (user): Element Setup 1.11.96.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.11.96.exe
  - sha256: 2f799aa8f5edf39b184e548b60ae55b3e6e9bb305df13bb0ad702ccb7863d812
- arm64 exe (user): Element Setup 1.11.96.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.11.96.exe
  - sha256: e128f8e3f7666d1586a7acd1555b40a77d7ef6ef15673cbed98824b81c8ea83a
- x86 exe (user): Element Setup 1.11.96.exe
  - url: https://packages.element.io/desktop/install/win32/ia32/Element%20Setup%201.11.96.exe
  - sha256: 3b2aa351db701ecbfced221d99aa2c4453e70285d4b50cafa5ecd0a9356b3ddb
Release notes: ✨ Features - RoomListViewModel: Track the index of the active room in the list (#29519). Contributed by @MidhunSureshR. - New room list: add empty state (#29512). Contributed by @florianduros. - Implement MessagePreviewViewModel (#29514). Contributed by @MidhunSureshR. - RoomListViewModel: Add functionality to toggle message preview setting (#29511). Contributed by @MidhunSureshR. - New room list: add more options menu on room list item (#29445). Contributed by @florianduros. - RoomListViewModel: Provide a way to resort the room list and track the active sort method (#29499). Contributed by @MidhunSureshR. - Change *All rooms* meta space name to *All Chats* (#29498). Contributed by @florianduros. - Add setting to hide avatars of rooms you have been invited to. (#29497). Contributed by @Half-Shot. - Room List Store: Save preferred sorting algorithm and use that on app launch (#29493). Contributed by @MidhunSureshR. - Add key storage toggle to Encryption settings (#29310). Contributed by @dbkr. - New room list: add primary filters (#29481). Contributed by @florianduros. - Implement MSC4142: Remove unintentional intentional mentions in replies (#28209). Contributed by @tulir. - White background for 'They do not match' button (#29470). Contributed by @andybalaam. - RoomListViewModel: Support secondary filters in the view model (#29465). Contributed by @MidhunSureshR. - RoomListViewModel: Support primary filters in the view model (#29454). Contributed by @MidhunSureshR. - Room List Store: Implement secondary filters (#29458). Contributed by @MidhunSureshR. - Room List Store: Implement rest of the primary filters (#29444). Contributed by @MidhunSureshR. - Room List Store: Support filters by implementing just the favourite filter (#29433). Contributed by @MidhunSureshR. - Move toggle switch for integration manager for a11y (#29436). Contributed by @Half-Shot. - New room list: basic flat list (#29368). Contributed by @florianduros. - Improve rageshake upload experience by providing useful error information (#29378). Contributed by @Half-Shot. - Add more functionality to the room list vm (#29402). Contributed by @MidhunSureshR. 🐛 Bug Fixes - Fix --no-update command line flag (#2210). Contributed by @t3chguy. - New room list: fix compose menu action in space (#29500). Contributed by @florianduros. - Change ToggleHiddenEventVisibility & GoToHome KeyBindingActions (#29374). Contributed by @gy-mate. - Fix Docker Healthcheck (#29471). Contributed by @benbz. - Room List Store: Fetch rooms after space store is ready + attach store to window (#29453). Contributed by @MidhunSureshR. - Room List Store: Fix bug where left rooms appear in room list (#29452). Contributed by @MidhunSureshR. - Add space to the bottom of the room summary actions below leave room (#29270). Contributed by @langleyd. - Show error screens in group calls (#29254). Contributed by @robintown. - Prevent user from accidentally triggering multiple identity resets (#29388). Contributed by @uhoreg. - Remove buggy tooltip on room intro & homepage (#29406). Contributed by @t3chguy.

Pin: `winget install --id Element.Element --version 1.11.96 --exact`

#### 1.11.95 — 2025-03-11

- x64 exe (user): Element Setup 1.11.95.exe
  - url: https://packages.element.io/desktop/install/win32/x64/Element%20Setup%201.11.95.exe
  - sha256: dfa601706293d6b77c5edd1e33fc28212d1672a872fe6edf172c31a5d2e670e8
- arm64 exe (user): Element Setup 1.11.95.exe
  - url: https://packages.element.io/desktop/install/win32/arm64/Element%20Setup%201.11.95.exe
  - sha256: 3487bf91aae96388226d6f2c766fa2348b8c6ea11791cc40bc83c3811d2fc80e
- x86 exe (user): Element Setup 1.11.95.exe
  - url: https://packages.element.io/desktop/install/win32/ia32/Element%20Setup%201.11.95.exe
  - sha256: 2cd9360d7f1fd10536c3110bdb70a69e037398a4b36c3e448e6d54b73d319070
Release notes: ✨ Features - Switch to shiftkey/node-keytar as it has NAPI 10 updates (#2172). Contributed by @t3chguy. - Add support for Windows arm64 (#624). Contributed by @t3chguy. - Room List Store: Filter rooms by active space (#29399). Contributed by @MidhunSureshR. - Room List - Update the room list store on actions from the dispatcher (#29397). Contributed by @MidhunSureshR. - Room List - Implement a minimal view model (#29357). Contributed by @MidhunSureshR. - New room list: add space menu in room header (#29352). Contributed by @florianduros. - Room List - Store sorted rooms in skip list (#29345). Contributed by @MidhunSureshR. - New room list: add dial to search section (#29359). Contributed by @florianduros. - New room list: add compose menu for spaces in header (#29347). Contributed by @florianduros. - Use EditInPlace control for Identity Server picker to improve a11y (#29280). Contributed by @Half-Shot. - First step to add header to new room list (#29320). Contributed by @florianduros. - Add Windows 64-bit arm link and remove 32-bit link on compatibility page (#29312). Contributed by @t3chguy. - Honour the backup disable flag from Element X (#29290). Contributed by @dbkr. 🐛 Bug Fixes - Fix edited code block width (#29394). Contributed by @florianduros. - new room list: keep space name in one line in header (#29369). Contributed by @florianduros. - Dismiss "Key storage out of sync" toast when secrets received (#29348). Contributed by @richvdh. - Minor CSS fixes for the new room list (#29334). Contributed by @florianduros. - Add padding to room header icon (#29271). Contributed by @langleyd.

Pin: `winget install --id Element.Element --version 1.11.95 --exact`

## macOS

### What the installer does
- Delivered as a ZIP archive for Apple silicon and Intel.
- Installs the app `Element.app` into the Applications folder.
- Requires macOS 13 or later.
- The app updates itself, so it may be newer than the version Homebrew lists.
- A full “zap” removal also deletes up to 11 support, cache and preference locations in your home folder.

### Versions (newest first) — Homebrew lists only the current release

#### 1.12.33

- universal zip: Element-1.12.33-universal-mac.zip
  - url: https://packages.element.io/desktop/update/macos/Element-1.12.33-universal-mac.zip
  - sha256: 6085bda81dd5aaa8c7aec4093d387f28395c48d0651ac4283ca1e06361d69923

Install: `brew install --cask element`
