Commit Graph

147 Commits

Author SHA1 Message Date
RiotRobot 4ee7dd0fe9 Upgrade dependency to matrix-js-sdk@41.3.0-rc.0 2026-03-31 12:35:09 +00:00
Andy Balaam cabac4ef0e Attempt to deflake the 'Verify this device' test by scrolling up (#32981) 2026-03-31 10:49:57 +00:00
renovate[bot] 3c3452eb0e Update ghcr.io/element-hq/synapse:develop Docker digest to 73fe964 (#32987)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-31 08:45:32 +00:00
Michael Telatynski fc870bd676 Fix playwright tests locally (#32974) 2026-03-31 07:54:23 +00:00
Zack dda9ec061b Shared Components Restructure, Cherry Picked | Room Timeline (#32916)
* refactor(shared-components): move room timeline tree

* refactor(web): move room timeline viewmodels

* Prettier FIx

* fix(refactor): align newer imports with room timeline paths

* test(shared-components): add room timeline visual baselines

* test(shared-components): drop stale timeline baseline paths
2026-03-30 15:15:21 +00:00
Andy Balaam 7c60752b04 In DeviceListener, remove unused variable (#32971) 2026-03-30 15:07:41 +00:00
Andy Balaam 36ddd5eae5 Ensure the incoming verification request appears above the please verify prompt (#32931) 2026-03-30 13:32:51 +00:00
Will Hunt e0cf78b5b8 Add analytics tracking for URL previews (#32659)
* Add analytics tracking.

* fix import

* fix other import too

* fixup type

* Add test case

* Add better testing

* make it happier

* update lock
2026-03-30 10:10:46 +00:00
Robin f28fca76eb Delete some unneeded code in the ElementCall class (#32879)
* Remove redundant call intent computation

I'm not clear on why we've been computing the intent of a call twice — first in generateWidgetUrl and then again in getWidgetData. Adding intent to the widget's data has no effect at all since there is no matching placeholder in the URL for it to be templated into. It seems we can safely delete this code.

* Remove preload hack

Element Web has long since upgraded past version 0.15.0 of Element Call, so we no longer need to set the preload parameter manually.
2026-03-30 09:15:57 +00:00
R Midhun Suresh 1dbad6101e Collapsible Room List - Clicking on separator should expand to last set width (#32909)
* Expand panel to last known width

* Update test
2026-03-29 12:23:53 +00:00
Florian Duros b3299dfbb3 Fix icon size of badges in right panel (#32952)
* fix: icon size of badges in right panel

* test: update snapshot

* test: update screenshot
2026-03-26 20:29:21 +00:00
renovate[bot] 0b092fb84b Update ghcr.io/element-hq/matrix-authentication-service:main Docker digest to f54c221 (#32944)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-26 15:22:09 +00:00
renovate[bot] 469a23ec12 Update ghcr.io/element-hq/synapse:develop Docker digest to d64326b (#32945)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-26 14:24:07 +00:00
Zack 411eab9fd2 remove redundant guards before snapshot.merge (#32937)
* remove redundant guards before snapshot.merge

* fix(viewmodels): restore RedactedBodyViewModel setting guard

* docs(mvvm): note Snapshot.merge change detection
2026-03-26 13:00:48 +00:00
Michael Telatynski cd429874db Reference files in Playwright more reliably (#32935)
Without assuming the cwd
2026-03-26 11:30:54 +00:00
Robin 5a074e637a Fix room list often showing the wrong icons for calls (#32881)
* Give rooms with calls a proper accessible description

Besides improving accessibility, this makes it possible to check for the presence of a call indicator in the room list in Playwright tests.

* Make room list react to calls in a room, even when not connected to them

To use the results of CallStore.getRoom reactively, you need to listen for Call events, not ConnectedCalls events.

* Don't assume that every call starts off as a video call

If a Call object is created by way of someone starting a voice call, then of course the call's initial type needs to be 'voice'.

* Make room list items react to changes in call type

The type of a call may change over time; therefore room list items explicitly need to react to the changes.

* Update a call's type before notifying listeners of the change

If we notify listeners of a change in a call's type before actually making that change, the listeners will be working with glitched state. This would cause the room list to show the wrong call type in certain situations.

* Ignore the Vitest attachments directory
2026-03-26 10:28:48 +00:00
Florian Duros 441b292353 RoomList: improve performance (#32919)
* perf: add memo to room avatar view

* perf: batch rlsV3 emit

* perf: avoid to re-render the room list if the room list state and sections are same

* perf: listen only message preview of the specific room

* perf: avoid to re-render the room list item if the notification or the content is same

* chore: replace useState and useEffect by useMemo in virtualized list

* fix: listen to room name event in RoomAvatar

* fix: room avatar re-render when room is low priority
2026-03-25 19:52:45 +00:00
Michael Telatynski ec47986ef5 Fix emoticon slash commands including stale buffers (#32928) 2026-03-25 17:06:35 +00:00
Florian Duros 1025d60001 Avoid excessive re-render when setting same reference/value in snapshot (#32918)
* perf: avoid excessive re-render when setting same value in snapshot

* test: update tests
2026-03-25 15:23:11 +00:00
Michael Telatynski d4fb08b392 Absorb element-desktop into monorepo (#32903)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: RiotRobot <releases@riot.im>
Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
Co-authored-by: Ben Banfield-Zanin <benbz@element.io>
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
Co-authored-by: R Midhun Suresh <hi@midhun.dev>
Co-authored-by: R Midhun Suresh <rmidhunsuresh@gmail.com>
Co-authored-by: Aditya Cherukuru <145639927+aditya-cherukuru@users.noreply.github.com>
Co-authored-by: Guilhem Saurel <guilhem.saurel@laas.fr>
Co-authored-by: David Baker <dbkr@users.noreply.github.com>
2026-03-25 11:19:42 +01:00
ElementRobot e3456a7d1e [create-pull-request] automated change (#32913)
Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
2026-03-25 06:45:33 +00:00
Michael Telatynski 6d21687ca9 Make tsc happier
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2026-03-24 15:03:52 +00:00
Michael Telatynski 4d72aa22e3 Update links to old repo
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2026-03-24 13:33:49 +00:00
RiotRobot eb8ca0bf5d Reset matrix-js-sdk back to develop branch 2026-03-24 11:30:21 +00:00
RiotRobot 67f36c28b2 Merge branch 'master' into develop 2026-03-24 11:29:41 +00:00
RiotRobot f72e09173b v1.12.13
Docker / Docker Buildx (push) Failing after 57s
2026-03-24 11:26:49 +00:00
RiotRobot b49a29f3df Upgrade dependency to matrix-js-sdk@41.2.0 2026-03-24 11:23:51 +00:00
Zack 4f3a1a2cc6 Refactor and Move RedactedBodyView To Shared Components (#32772)
* refactoring and creation of shared-components for reductedBodyView

* move redacted message rendering to shared MVVM view

* Update snapshots + fix lint errors

* Remove MatrixClientPeg and use reguler react matrix client context

* Stop resyncing redacted body view models with mxEvent

* Fix redacted_because test fixtures for stricter event typing

* Simplify redacted body client access

* Watch timestamp setting in redacted body view model

* Refactor redacted and decryption failure body factories into MBodyFactory

* Prettier Fix

* Refactor FileBody into same pattern for consitancy
2026-03-24 10:02:07 +00:00
Michael Telatynski d7843bb9b8 Set playwright maxFailures in CI (#32878)
So if you have a totally hosed EW build you're not waiting an hour to find out
2026-03-24 08:43:31 +00:00
Michael Telatynski 9e031f887f Revert "Increase playwright runners to 2 in CI (#32877)" (#32892)
This reverts commit 89261bbe00.
2026-03-23 21:09:54 +00:00
DLCSharp 54d3ab9e69 Fix presence indicators not showing without cache (#32880)
* Fix presence indicators not showing on initial login without cache

* Fix lint exhaustive-deps : useEffect room
2026-03-23 18:09:42 +00:00
Gustavo Ribeiro 4530635db9 Show space name instead of 'Empty room' after creation (#32886)
* Fix #32682: Show space name instead of 'Empty room' after creation

When creating a new space, the setup screens showed 'Empty room' or
'New room' instead of the chosen name.

The 'createSpace' function nested 'name' and 'topic' inside
'createOpts'. However, the creation flow expects them at the top
level of the options object. This caused the name to be undefined.

This patch modifies SpaceCreateMenu.tsx to move these properties to
the top-level. It also updates SpaceCreateMenu-test.tsx with a
regression test to verify the fix and prevent future regressions.

* fix: format SpaceCreateMenu test with prettier
2026-03-23 17:55:39 +00:00
renovate[bot] 41b97c1e97 Update ghcr.io/element-hq/synapse:develop Docker digest to ce702a0 (#32890)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-23 17:43:17 +00:00
Michael Telatynski fc391169da Update nginx default config around caching (#32884)
* Update nginx default config around caching

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Update README around caching

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2026-03-23 16:40:10 +00:00
renovate[bot] bb1d376d5d Update ghcr.io/element-hq/matrix-authentication-service:main Docker digest to f467079 (#32889)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-23 15:49:56 +00:00
Éloi Rivard aecdbc38cf fix: strip ephemeral query params from OIDC redirect URI (#32875)
getOidcCallbackUrl() was building the redirect_uri from window.location.href,
which may contain ephemeral params such as `updated` (appended on auto-update of element-web).
This caused a redirect_uri mismatch on authorization servers.
2026-03-23 15:21:03 +00:00
R Midhun Suresh 99e6ede9f1 Implement collapsible panels for the new room list (#32742)
* Add `react-resizable-panels` library

* Implement a custom SeparatorView

* Add a `LeftResizablePanelView`

* Add a custom `GroupView`

* Export everything from shared-components

* Make it possible to track width/collapse state through settings

* Add a view model to drive the views

* Render views without disrupting the old room list

* Fix lint error

* Disable user interaction on collapsed panel

* Prevent widgets fron hijacking pointer events

* Expand to full width on separator click

* Separator should be shown when focused via keyboard

* Update tests

* Use data-attribute for hover

* Write stories for SeperatorView

* Write vite tests for SeparatorView

* Write tests for LeftResizablePanelView

* More tests

* Fix lint errors

* Fix flakey border on the roomlst

* Fix storybook axe violation

* Update snapshots

* Fix playwright tests

* Fix sonarcloud issues

* Use translated string

* Add better js-doc comments

* Rename `ResizerSnapshot` to `ResizerViewSnapshot`

* Externalize react-resizable-panels

* Link figma designs to stories

* Write playwright tests

* Update screenshots

* Fix lint errors

* Update more screenshots

* Update more screenshots

* Fix flaky toast test

* Update apps/web/playwright/e2e/crypto/toasts.spec.ts

Co-authored-by: Andy Balaam <andy.balaam@matrix.org>

* Fix indentation

---------

Co-authored-by: Andy Balaam <andy.balaam@matrix.org>
2026-03-23 13:33:32 +00:00
Michael Telatynski 89261bbe00 Increase playwright runners to 2 in CI (#32877) 2026-03-23 09:17:19 +00:00
ElementRobot e4f69693c3 [create-pull-request] automated change (#32882)
Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
2026-03-23 06:51:47 +00:00
renovate[bot] 3c23fd21ac Update npm non-major dependencies (#32843)
* Update npm non-major dependencies

* Update knip patch

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Make knip happy

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

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>
2026-03-20 19:41:13 +00:00
renovate[bot] 16b12dea95 Update dependency webpack-cli to v7 (#32847)
* Update dependency webpack-cli to v7

* Remove stale webpack cli args

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

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>
2026-03-20 16:11:11 +00:00
ElementRobot 09f56ed3b6 [Backport staging] Fix soft crash of room list when trying to open a room (#32872)
* Fix soft crash of room list when trying to open a room (#32864)

* fix: soft crash of room list trying to get item vm

* test: add test to check roomMap recovery and cleared when needed

(cherry picked from commit 9358096ac6)

* test: fix room list vm usage in test

https://github.com/element-hq/element-web/pull/32819 has renamed the vm
but this PR isn't in the base branch of the backport

---------

Co-authored-by: Florian Duros <florianduros@element.io>
Co-authored-by: Florian Duros <florian.duros@ormaz.fr>
2026-03-20 15:44:40 +00:00
renovate[bot] 793c4ff110 Update css (#32552)
* Update css

* Patch weak types in postcss-mixins

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

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>
2026-03-20 15:17:07 +00:00
renovate[bot] b2c19d4ed9 Update dependency caniuse-lite to v1.0.30001780 (#32835)
* Update dependency caniuse-lite to v1.0.30001780

* Update test

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

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>
2026-03-20 13:56:25 +00:00
Florian Duros 9358096ac6 Fix soft crash of room list when trying to open a room (#32864)
* fix: soft crash of room list trying to get item vm

* test: add test to check roomMap recovery and cleared when needed
2026-03-20 13:36:58 +00:00
Michael Telatynski 8f01b2b3db Optimise docker context (#32870)
* Optimise docker context

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Optimise docker context further

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Debug

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

* Iterate

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2026-03-20 13:26:32 +00:00
renovate[bot] 04d96a6b2d Update ghcr.io/element-hq/matrix-authentication-service:main Docker digest to 8065b36 (#32827)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-20 09:18:23 +00:00
renovate[bot] 46a46dff59 Update dependency @matrix-org/analytics-events to ^0.33.0 (#32839)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-20 09:18:03 +00:00
renovate[bot] ba670a67ad Update nginxinc/nginx-unprivileged:alpine-slim Docker digest to 4011c42 (#32830)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-20 09:17:22 +00:00
renovate[bot] 865e6bddb1 Update docker.io/docker/dockerfile Docker tag to v1.22 (#32841)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-20 09:09:46 +00:00