From fc47676c538173b48d547427066c9d8c283eb374 Mon Sep 17 00:00:00 2001 From: David Baker Date: Tue, 17 Feb 2026 15:23:14 +0000 Subject: [PATCH 01/11] Manually set js-sdk version to 41.0.0-rc.0 --- package.json | 2 +- pnpm-lock.yaml | 11 +++++------ 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/package.json b/package.json index 32afd1d537..8cddb1fd82 100644 --- a/package.json +++ b/package.json @@ -100,7 +100,7 @@ "lodash": "npm:lodash-es@^4.17.21", "maplibre-gl": "^5.0.0", "matrix-encrypt-attachment": "^1.0.3", - "matrix-js-sdk": "github:matrix-org/matrix-js-sdk#develop", + "matrix-js-sdk": "41.0.0-rc.0", "matrix-widget-api": "^1.16.1", "memoize-one": "^6.0.0", "mime": "^4.0.4", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0253cc261b..3ced008224 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -226,8 +226,8 @@ importers: specifier: ^1.0.3 version: 1.0.3 matrix-js-sdk: - specifier: github:matrix-org/matrix-js-sdk#develop - version: https://codeload.github.com/matrix-org/matrix-js-sdk/tar.gz/4f0696e2a4e070325cc63e9c5cf42f41e2f5ea6e + specifier: 41.0.0-rc.0 + version: 41.0.0-rc.0 matrix-widget-api: specifier: ^1.16.1 version: 1.17.0 @@ -7726,9 +7726,8 @@ packages: matrix-events-sdk@0.0.1: resolution: {integrity: sha512-1QEOsXO+bhyCroIe2/A5OwaxHvBm7EsSQ46DEDn8RBIfQwN5HWBpFvyWWR4QY0KHPPnnJdI99wgRiAl7Ad5qaA==} - matrix-js-sdk@https://codeload.github.com/matrix-org/matrix-js-sdk/tar.gz/4f0696e2a4e070325cc63e9c5cf42f41e2f5ea6e: - resolution: {tarball: https://codeload.github.com/matrix-org/matrix-js-sdk/tar.gz/4f0696e2a4e070325cc63e9c5cf42f41e2f5ea6e} - version: 40.2.0 + matrix-js-sdk@41.0.0-rc.0: + resolution: {integrity: sha512-sHjyQ6BD/90YkCFrp+r8weYChvGHOhYwjm2hOIhHGJL3jJF1lGyQK3MC3/uTOqHrYQdHcmAjQg5+4iU352ySKA==} engines: {node: '>=22.0.0'} matrix-web-i18n@3.6.0: @@ -18534,7 +18533,7 @@ snapshots: matrix-events-sdk@0.0.1: {} - matrix-js-sdk@https://codeload.github.com/matrix-org/matrix-js-sdk/tar.gz/4f0696e2a4e070325cc63e9c5cf42f41e2f5ea6e: + matrix-js-sdk@41.0.0-rc.0: dependencies: '@babel/runtime': 7.28.6 '@matrix-org/matrix-sdk-crypto-wasm': 17.1.0 From faf3278a8e3e9e3ad5b5d0ad429a54d842cfd2ed Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 17 Feb 2026 15:25:57 +0000 Subject: [PATCH 02/11] v1.12.11-rc.1 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 8cddb1fd82..5e0a73ed87 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "element-web", - "version": "1.12.11-rc.0", + "version": "1.12.11-rc.1", "description": "Element: the future of secure communication", "author": "New Vector Ltd.", "repository": { From d19208bee3d34dea16122fbd4254bb8750f48c76 Mon Sep 17 00:00:00 2001 From: ElementRobot Date: Thu, 19 Feb 2026 17:10:05 +0100 Subject: [PATCH 03/11] resolve undefined this in onClick handler (#32576) (#32583) * resolve undefined this in onClick handler * add regression test for bound DisambiguatedProfileViewModel onClick * Update docs * add regression for sender profile click mention insertion * Eslint Fix (cherry picked from commit 134c7cde46447bf865fe1b3b136d2c1c4c6eb64f) Co-authored-by: Zack --- docs/MVVM.md | 14 ++++++++++ playwright/e2e/timeline/timeline.spec.ts | 28 +++++++++++++++++++ .../profile/DisambiguatedProfileViewModel.ts | 4 +-- .../DisambiguatedProfileViewModel-test.tsx | 16 ++++++++++- 4 files changed, 59 insertions(+), 3 deletions(-) diff --git a/docs/MVVM.md b/docs/MVVM.md index d6f182bd2e..065a44e294 100644 --- a/docs/MVVM.md +++ b/docs/MVVM.md @@ -127,6 +127,20 @@ export class FooViewModel extends BaseViewModel implemen } ``` +#### Binding of View Model Actions: + +All view model actions must be defined as arrow functions to ensure they are bound to the class instance. + +Using standard class methods can result in `this` being undefined when the function is passed as a callback (e.g. to a React event handler), which may cause runtime errors. + +Correct pattern: + +```ts +public doSomething = (): void => { + ... +}; +``` + ### `useViewModel` hook Your view must call this hook with the view-model as argument. Think of this as your view subscribing to the view model.
diff --git a/playwright/e2e/timeline/timeline.spec.ts b/playwright/e2e/timeline/timeline.spec.ts index b4e927cdac..ad93a241ff 100644 --- a/playwright/e2e/timeline/timeline.spec.ts +++ b/playwright/e2e/timeline/timeline.spec.ts @@ -1008,6 +1008,34 @@ test.describe("Timeline", () => { await expect(page.getByRole("button", { name: "Show video" })).toBeVisible(); await expect(page.locator("video")).not.toBeVisible(); }); + + test("should insert a mention when clicking sender profile in timeline", async ({ + page, + app, + homeserver, + room, + }) => { + const senderDisplayName = "SenderBot"; + const messageFromSender = "message from sender"; + + const bot = new Bot(page, homeserver, { + displayName: senderDisplayName, + autoAcceptInvites: false, + }); + await bot.prepareClient(); + await app.client.inviteUser(room.roomId, bot.credentials.userId); + await bot.joinRoom(room.roomId); + await bot.sendMessage(room.roomId, messageFromSender); + + await app.viewRoomById(room.roomId); + + const senderMessageTile = getEventTilesWithBodies(page).filter({ hasText: messageFromSender }).first(); + await expect(senderMessageTile).toBeVisible(); + + await senderMessageTile.locator(".mx_DisambiguatedProfile").click(); + + await expect(app.getComposerField().getByText(senderDisplayName)).toBeVisible(); + }); }); test.describe("message sending", { tag: ["@no-firefox", "@no-webkit"] }, () => { diff --git a/src/viewmodels/profile/DisambiguatedProfileViewModel.ts b/src/viewmodels/profile/DisambiguatedProfileViewModel.ts index 807ae20522..49a2db4e29 100644 --- a/src/viewmodels/profile/DisambiguatedProfileViewModel.ts +++ b/src/viewmodels/profile/DisambiguatedProfileViewModel.ts @@ -141,7 +141,7 @@ export class DisambiguatedProfileViewModel this.snapshot.set(DisambiguatedProfileViewModel.computeSnapshot(this.props)); } - public onClick(evt: MouseEvent): void { + public onClick = (evt: MouseEvent): void => { this.props.onClick?.(evt); - } + }; } diff --git a/test/viewmodels/profile/DisambiguatedProfileViewModel-test.tsx b/test/viewmodels/profile/DisambiguatedProfileViewModel-test.tsx index 270f3e66b4..faf2edecfd 100644 --- a/test/viewmodels/profile/DisambiguatedProfileViewModel-test.tsx +++ b/test/viewmodels/profile/DisambiguatedProfileViewModel-test.tsx @@ -75,13 +75,27 @@ describe("DisambiguatedProfileViewModel", () => { const subscriber = jest.fn(); vm.subscribe(subscriber); - onClick({} as never); + vm.onClick?.({} as never); expect(onClick).toHaveBeenCalledTimes(1); expect(subscriber).not.toHaveBeenCalled(); expect(vm.getSnapshot()).toBe(prevSnapshot); }); + it("should keep onClick bound when extracted as a callback", () => { + const onClick = jest.fn(); + const vm = new DisambiguatedProfileViewModel({ + member, + fallbackName: "Fallback", + onClick, + }); + + const clickHandler = vm.onClick; + + expect(() => clickHandler?.({} as never)).not.toThrow(); + expect(onClick).toHaveBeenCalledTimes(1); + }); + it("should emit snapshot update when fallbackName changes", () => { const vm = new DisambiguatedProfileViewModel({ member: null, From b4af54a7734d4857f24b9a5a9e9ecda0bffab8d3 Mon Sep 17 00:00:00 2001 From: David Baker Date: Tue, 24 Feb 2026 15:06:26 +0100 Subject: [PATCH 04/11] Set js-sdk version to 41.0.0 --- package.json | 2 +- pnpm-lock.yaml | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/package.json b/package.json index 5e0a73ed87..c09f1dc926 100644 --- a/package.json +++ b/package.json @@ -100,7 +100,7 @@ "lodash": "npm:lodash-es@^4.17.21", "maplibre-gl": "^5.0.0", "matrix-encrypt-attachment": "^1.0.3", - "matrix-js-sdk": "41.0.0-rc.0", + "matrix-js-sdk": "41.0.0", "matrix-widget-api": "^1.16.1", "memoize-one": "^6.0.0", "mime": "^4.0.4", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3ced008224..d732ee18eb 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -226,8 +226,8 @@ importers: specifier: ^1.0.3 version: 1.0.3 matrix-js-sdk: - specifier: 41.0.0-rc.0 - version: 41.0.0-rc.0 + specifier: 41.0.0 + version: 41.0.0 matrix-widget-api: specifier: ^1.16.1 version: 1.17.0 @@ -7726,8 +7726,8 @@ packages: matrix-events-sdk@0.0.1: resolution: {integrity: sha512-1QEOsXO+bhyCroIe2/A5OwaxHvBm7EsSQ46DEDn8RBIfQwN5HWBpFvyWWR4QY0KHPPnnJdI99wgRiAl7Ad5qaA==} - matrix-js-sdk@41.0.0-rc.0: - resolution: {integrity: sha512-sHjyQ6BD/90YkCFrp+r8weYChvGHOhYwjm2hOIhHGJL3jJF1lGyQK3MC3/uTOqHrYQdHcmAjQg5+4iU352ySKA==} + matrix-js-sdk@41.0.0: + resolution: {integrity: sha512-58j4WuOwXvT6bmTgc48b3bITVG/rWv5+N//yA5mvr6Rc04EUSpwTPhgMOTjUVnJsrhLGzdkgal4Xtt2R+xNdwg==} engines: {node: '>=22.0.0'} matrix-web-i18n@3.6.0: @@ -18533,7 +18533,7 @@ snapshots: matrix-events-sdk@0.0.1: {} - matrix-js-sdk@41.0.0-rc.0: + matrix-js-sdk@41.0.0: dependencies: '@babel/runtime': 7.28.6 '@matrix-org/matrix-sdk-crypto-wasm': 17.1.0 From 013f1ce791c4752bb2ef1147d3fa8fc0d56d425e Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 24 Feb 2026 14:10:50 +0000 Subject: [PATCH 05/11] v1.12.11 --- CHANGELOG.md | 29 +++++++++++++++++++++++++++++ package.json | 2 +- 2 files changed, 30 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 8684747cb7..e32337e483 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,32 @@ +Changes in [1.12.11](https://github.com/element-hq/element-web/releases/tag/v1.12.11) (2026-02-24) +================================================================================================== +## 🦖 Deprecations + +* Remove UIFeature.BulkUnverifiedSessionsReminder setting ([#31943](https://github.com/element-hq/element-web/pull/31943)). Contributed by @andybalaam. +* Remove unused function to auto-rageshake when key backup is not set up ([#31942](https://github.com/element-hq/element-web/pull/31942)). Contributed by @andybalaam. + +## ✨ Features + +* Room list: update the visuals in order to have better contrast ([#32421](https://github.com/element-hq/element-web/pull/32421)). Contributed by @florianduros. +* Set history visibility to "invited" for DMs and new non-public rooms when creating a room ([#31974](https://github.com/element-hq/element-web/pull/31974)). Contributed by @langleyd. +* Remove server acl status/summaries from timeline ([#32461](https://github.com/element-hq/element-web/pull/32461)). Contributed by @langleyd. +* Update `globalBlacklistUnverifiedDevices` on setting change ([#31983](https://github.com/element-hq/element-web/pull/31983)). Contributed by @kaylendog. +* Add badge for history visibiltity to room info panel ([#31927](https://github.com/element-hq/element-web/pull/31927)). Contributed by @richvdh. + +## 🐛 Bug Fixes + +* Default useOnlyCurrentProfiles to true ([#32524](https://github.com/element-hq/element-web/pull/32524)). Contributed by @dbkr. +* Keep custom theme active after reload ([#32506](https://github.com/element-hq/element-web/pull/32506)). Contributed by @florianduros. +* Update font format from 'ttf' to 'truetype' ([#32493](https://github.com/element-hq/element-web/pull/32493)). Contributed by @all-yall. +* Fix videos on Firefox ([#32497](https://github.com/element-hq/element-web/pull/32497)). Contributed by @p1gp1g. +* Use a dedicated FAQ/help entry for key storage. ([#32480](https://github.com/element-hq/element-web/pull/32480)). Contributed by @mxandreas. +* Avoid showing two chat timelines side by side after a call ([#32484](https://github.com/element-hq/element-web/pull/32484)). Contributed by @robintown. +* Update screenshot for reactive display name disambiguation ([#32431](https://github.com/element-hq/element-web/pull/32431)). Contributed by @aditya-cherukuru. +* Fix Status Bar being unreadable when the user overrides the default OS light/dark theme. ([#32442](https://github.com/element-hq/element-web/pull/32442)). Contributed by @Half-Shot. +* fix: Remove state\_key: null from Seshat search results ([#31524](https://github.com/element-hq/element-web/pull/31524)). Contributed by @shinaoka. +* Fix user pill deserialisation ([#31947](https://github.com/element-hq/element-web/pull/31947)). Contributed by @t3chguy. + + Changes in [1.12.10](https://github.com/element-hq/element-web/releases/tag/v1.12.10) (2026-02-10) ================================================================================================== ## ✨ Features diff --git a/package.json b/package.json index c09f1dc926..a7923542fa 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "element-web", - "version": "1.12.11-rc.1", + "version": "1.12.11", "description": "Element: the future of secure communication", "author": "New Vector Ltd.", "repository": { From c64c1cdb020ad36329247148b7236721228ddc53 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 3 Mar 2026 13:14:21 +0000 Subject: [PATCH 06/11] Upgrade dependency to matrix-js-sdk@41.1.0-rc.0 --- apps/web/package.json | 2 +- pnpm-lock.yaml | 11 +++++------ 2 files changed, 6 insertions(+), 7 deletions(-) diff --git a/apps/web/package.json b/apps/web/package.json index b7795cb88b..6996db55f2 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -85,7 +85,7 @@ "lodash": "npm:lodash-es@^4.17.21", "maplibre-gl": "^5.0.0", "matrix-encrypt-attachment": "^1.0.3", - "matrix-js-sdk": "github:matrix-org/matrix-js-sdk#develop", + "matrix-js-sdk": "41.1.0-rc.0", "matrix-widget-api": "^1.16.1", "memoize-one": "^6.0.0", "mime": "^4.0.4", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 7a21e60ed5..56e802fb83 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -283,8 +283,8 @@ importers: specifier: ^1.0.3 version: 1.0.3 matrix-js-sdk: - specifier: github:matrix-org/matrix-js-sdk#develop - version: https://codeload.github.com/matrix-org/matrix-js-sdk/tar.gz/09663302e15b93a88cae6631574c88e1df94031c + specifier: 41.1.0-rc.0 + version: 41.1.0-rc.0 matrix-widget-api: specifier: ^1.17.0 version: 1.17.0 @@ -7895,9 +7895,8 @@ packages: matrix-events-sdk@0.0.1: resolution: {integrity: sha512-1QEOsXO+bhyCroIe2/A5OwaxHvBm7EsSQ46DEDn8RBIfQwN5HWBpFvyWWR4QY0KHPPnnJdI99wgRiAl7Ad5qaA==} - matrix-js-sdk@https://codeload.github.com/matrix-org/matrix-js-sdk/tar.gz/09663302e15b93a88cae6631574c88e1df94031c: - resolution: {tarball: https://codeload.github.com/matrix-org/matrix-js-sdk/tar.gz/09663302e15b93a88cae6631574c88e1df94031c} - version: 41.0.0 + matrix-js-sdk@41.1.0-rc.0: + resolution: {integrity: sha512-gXUp/3wOM4uzodtqFKMN2v5RmTmExZxtN6abKdPbbWP1Swk5JPim/4lBWY4gGau5wp8ONiTyk93w8M635Ujudw==} engines: {node: '>=22.0.0'} matrix-web-i18n@3.6.0: @@ -18896,7 +18895,7 @@ snapshots: matrix-events-sdk@0.0.1: {} - matrix-js-sdk@https://codeload.github.com/matrix-org/matrix-js-sdk/tar.gz/09663302e15b93a88cae6631574c88e1df94031c: + matrix-js-sdk@41.1.0-rc.0: dependencies: '@babel/runtime': 7.28.6 '@matrix-org/matrix-sdk-crypto-wasm': 17.1.0 From 5d718856d7b646c8589eef20bbe973e227c5e216 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 3 Mar 2026 13:22:36 +0000 Subject: [PATCH 07/11] v1.12.12-rc.0 --- apps/web/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/web/package.json b/apps/web/package.json index 6996db55f2..4749a0a75b 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -1,6 +1,6 @@ { "name": "element-web", - "version": "1.12.11-rc.0", + "version": "1.12.12-rc.0", "description": "Element: the future of secure communication", "author": "New Vector Ltd.", "repository": { From 0b29fc62e7b164bfea857b0f5eefbb122d876b8a Mon Sep 17 00:00:00 2001 From: ElementRobot Date: Fri, 6 Mar 2026 11:07:55 +0100 Subject: [PATCH 08/11] Update dependency @vector-im/compound-design-tokens to v6.10.1 (#32698) (#32739) * Update dependency @vector-im/compound-design-tokens to v6.10.1 * Update snapshots --------- (cherry picked from commit 49dffe83cc309b716a911b6b1ab6ff4eb25496e6) Signed-off-by: Michael Telatynski <7t3chguy@gmail.com> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> Co-authored-by: Michael Telatynski <7t3chguy@gmail.com> --- .../__snapshots__/ErrorView-test.tsx.snap | 4 ++-- .../RoomAvatarView-test.tsx.snap | 16 +++++++------- .../__snapshots__/ImageView-test.tsx.snap | 8 +++---- .../__snapshots__/MImageBody-test.tsx.snap | 8 +++---- .../PresenceIconView-test.tsx.snap | 20 ++++++++--------- .../vector/__snapshots__/init-test.ts.snap | 4 ++-- pnpm-lock.yaml | 22 +++++++++---------- pnpm-workspace.yaml | 2 +- 8 files changed, 42 insertions(+), 42 deletions(-) diff --git a/apps/web/test/unit-tests/async-components/structures/__snapshots__/ErrorView-test.tsx.snap b/apps/web/test/unit-tests/async-components/structures/__snapshots__/ErrorView-test.tsx.snap index abd504ee63..a7abafcddb 100644 --- a/apps/web/test/unit-tests/async-components/structures/__snapshots__/ErrorView-test.tsx.snap +++ b/apps/web/test/unit-tests/async-components/structures/__snapshots__/ErrorView-test.tsx.snap @@ -227,7 +227,7 @@ exports[` should match snapshot 1`] = ` xmlns="http://www.w3.org/2000/svg" > should match snapshot 1`] = ` should render the AWAY presence 1`] = ` xmlns="http://www.w3.org/2000/svg" > should render the AWAY presence 1`] = ` should render the BUSY presence 1`] = ` xmlns="http://www.w3.org/2000/svg" > should render the BUSY presence 1`] = ` should render the OFFLINE presence 1`] = ` xmlns="http://www.w3.org/2000/svg" > should render the OFFLINE presence 1`] = ` should render the ONLINE presence 1`] = ` xmlns="http://www.w3.org/2000/svg" > should render the ONLINE presence 1`] = ` renders correctly 1`] = ` xmlns="http://www.w3.org/2000/svg" > renders correctly 1`] = ` renders correctly 1`] = ` xmlns="http://www.w3.org/2000/svg" > renders correctly 1`] = ` should open ImageView using thumbnail for encrypted svg 1 xmlns="http://www.w3.org/2000/svg" > should open ImageView using thumbnail for encrypted svg 1 should open ImageView using thumbnail for encrypted svg 1 xmlns="http://www.w3.org/2000/svg" > should open ImageView using thumbnail for encrypted svg 1 renders correctly for presence=busy 1`] = ` xmlns="http://www.w3.org/2000/svg" > renders correctly for presence=busy 1`] = ` renders correctly for presence=offline 1`] = ` xmlns="http://www.w3.org/2000/svg" > renders correctly for presence=offline 1`] = ` renders correctly for presence=online 1`] = ` xmlns="http://www.w3.org/2000/svg" > renders correctly for presence=online 1`] = ` renders correctly for presence=unavailable/unreacha xmlns="http://www.w3.org/2000/svg" > renders correctly for presence=unavailable/unreacha renders correctly for presence=unavailable/unreacha xmlns="http://www.w3.org/2000/svg" > renders correctly for presence=unavailable/unreacha Date: Tue, 10 Mar 2026 13:47:39 +0000 Subject: [PATCH 09/11] Upgrade dependency to matrix-js-sdk@41.1.0 --- apps/web/package.json | 2 +- pnpm-lock.yaml | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/apps/web/package.json b/apps/web/package.json index 4749a0a75b..e9df825e12 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -85,7 +85,7 @@ "lodash": "npm:lodash-es@^4.17.21", "maplibre-gl": "^5.0.0", "matrix-encrypt-attachment": "^1.0.3", - "matrix-js-sdk": "41.1.0-rc.0", + "matrix-js-sdk": "41.1.0", "matrix-widget-api": "^1.16.1", "memoize-one": "^6.0.0", "mime": "^4.0.4", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 2c08485f9b..1a1198dfa4 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -283,8 +283,8 @@ importers: specifier: ^1.0.3 version: 1.0.3 matrix-js-sdk: - specifier: 41.1.0-rc.0 - version: 41.1.0-rc.0 + specifier: 41.1.0 + version: 41.1.0 matrix-widget-api: specifier: ^1.17.0 version: 1.17.0 @@ -7895,8 +7895,8 @@ packages: matrix-events-sdk@0.0.1: resolution: {integrity: sha512-1QEOsXO+bhyCroIe2/A5OwaxHvBm7EsSQ46DEDn8RBIfQwN5HWBpFvyWWR4QY0KHPPnnJdI99wgRiAl7Ad5qaA==} - matrix-js-sdk@41.1.0-rc.0: - resolution: {integrity: sha512-gXUp/3wOM4uzodtqFKMN2v5RmTmExZxtN6abKdPbbWP1Swk5JPim/4lBWY4gGau5wp8ONiTyk93w8M635Ujudw==} + matrix-js-sdk@41.1.0: + resolution: {integrity: sha512-k26BTennxHGCqJbeGlg680pCa6kQvEk9lftmgdEKSpqGHQCm37LriqEwuOtCqcQ4CGAqtD/00xbrc6rOxOXXvA==} engines: {node: '>=22.0.0'} matrix-web-i18n@3.6.0: @@ -18895,7 +18895,7 @@ snapshots: matrix-events-sdk@0.0.1: {} - matrix-js-sdk@41.1.0-rc.0: + matrix-js-sdk@41.1.0: dependencies: '@babel/runtime': 7.28.6 '@matrix-org/matrix-sdk-crypto-wasm': 17.1.0 From 103fc1a497355b6b171dd636b13277e1fe296162 Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 10 Mar 2026 13:52:34 +0000 Subject: [PATCH 10/11] v1.12.12-rc.1 --- apps/web/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/apps/web/package.json b/apps/web/package.json index e9df825e12..1f5532f08c 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -1,6 +1,6 @@ { "name": "element-web", - "version": "1.12.12-rc.0", + "version": "1.12.12-rc.1", "description": "Element: the future of secure communication", "author": "New Vector Ltd.", "repository": { From 074a69aa1ed50e01408f560feee43852b930f71f Mon Sep 17 00:00:00 2001 From: RiotRobot Date: Tue, 10 Mar 2026 14:03:29 +0000 Subject: [PATCH 11/11] v1.12.12 --- CHANGELOG.md | 28 ++++++++++++++++++++++++++++ apps/web/package.json | 2 +- 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index e32337e483..94be73bcf5 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,31 @@ +Changes in [1.12.12](https://github.com/element-hq/element-web/releases/tag/v1.12.12) (2026-03-10) +================================================================================================== +## ✨ Features + +* Add stable support for MSC4380 invite blocking ([#31966](https://github.com/element-hq/element-web/pull/31966)). Contributed by @richvdh. +* Hide the names of banned users behind a spoiler tag ([#32424](https://github.com/element-hq/element-web/pull/32424)). Contributed by @andybalaam. +* Room list: remove bold effect on selected room ([#32593](https://github.com/element-hq/element-web/pull/32593)). Contributed by @florianduros. +* Use Compound buttons in auth screens ([#32562](https://github.com/element-hq/element-web/pull/32562)). Contributed by @t3chguy. +* Track room list sorting algorithm changes ([#32556](https://github.com/element-hq/element-web/pull/32556)). Contributed by @MidhunSureshR. +* Update `sso_redirect_options` to work for Native OIDC ([#32537](https://github.com/element-hq/element-web/pull/32537)). Contributed by @t3chguy. + +## 🐛 Bug Fixes + +* Room list: avoid excessive re-renders on room list store update or filter change ([#32663](https://github.com/element-hq/element-web/pull/32663)). Contributed by @florianduros. +* Room list: listen to call event to check number of participants ([#32677](https://github.com/element-hq/element-web/pull/32677)). Contributed by @florianduros. +* Fix invite-specific join errors not being shown ([#32621](https://github.com/element-hq/element-web/pull/32621)). Contributed by @Half-Shot. +* Prevent logging lots of "Browser unsupported" lines ([#32647](https://github.com/element-hq/element-web/pull/32647)). Contributed by @Half-Shot. +* Update critical gradient for room status bar ([#32575](https://github.com/element-hq/element-web/pull/32575)). Contributed by @Half-Shot. +* Room list: avoid header overflowing when too long ([#32645](https://github.com/element-hq/element-web/pull/32645)). Contributed by @florianduros. +* Room list: center focus outline of room list item ([#32637](https://github.com/element-hq/element-web/pull/32637)). Contributed by @florianduros. +* Fix misaligned cross in complete security dialog ([#32614](https://github.com/element-hq/element-web/pull/32614)). Contributed by @dbkr. +* Room list: fix keyboard navigation ([#32585](https://github.com/element-hq/element-web/pull/32585)). Contributed by @florianduros. +* Don't show empty privacy section ([#32582](https://github.com/element-hq/element-web/pull/32582)). Contributed by @dbkr. +* Disable room list image dragging ([#32590](https://github.com/element-hq/element-web/pull/32590)). Contributed by @florianduros. +* Update UserMenu theme toggle to use IconButton ([#32591](https://github.com/element-hq/element-web/pull/32591)). Contributed by @t3chguy. +* Room list: make room list item scales with large font size ([#32523](https://github.com/element-hq/element-web/pull/32523)). Contributed by @florianduros. + + Changes in [1.12.11](https://github.com/element-hq/element-web/releases/tag/v1.12.11) (2026-02-24) ================================================================================================== ## 🦖 Deprecations diff --git a/apps/web/package.json b/apps/web/package.json index 1f5532f08c..7edb5766e1 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -1,6 +1,6 @@ { "name": "element-web", - "version": "1.12.12-rc.1", + "version": "1.12.12", "description": "Element: the future of secure communication", "author": "New Vector Ltd.", "repository": {