Commit Graph

200 Commits

Author SHA1 Message Date
Michael Telatynski ec924deaa0 Merge branch 'develop' of ssh://github.com/element-hq/element-web into t3chguy/monorepo-playwright-common
# Conflicts:
#	pnpm-lock.yaml
2026-04-10 16:41:45 +01:00
Richard van der Hoff 4c4bfcde7e Inline inviteMultipleToRoom (#33027)
This two-line method serves mostly to obfuscate, imho. Let's get rid of it.
2026-04-09 22:11:12 +00:00
Andy Balaam 70f26f9142 Separate cases in DeviceListener (#32973)
* Separate cases in DeviceListener

According to the comment in `else` there were two ways to end up there. Split
these into separate cases and provide a different log message in each case.
If we somehow get there another way, throw an error.

* Replace a throw with an error log
2026-04-09 15:25:42 +00:00
Michael Telatynski 917237fc3c Pass args thru nx 2026-04-09 15:50:51 +01:00
Michael Telatynski b6b0b0009c Fix some flaky playwright tests (#33085)
* Tweak flaky test reporter to identify setup failures

* Fix some flaky playwright tests

* Iterate
2026-04-09 14:34:48 +00:00
Michael Telatynski 561dbd32be Iterate 2026-04-09 15:31:34 +01:00
Michael Telatynski 540e620f40 Adjust consumers of playwright-common 2026-04-09 15:22:56 +01:00
Florian Duros a5e09ebb53 feat: expand sections when filter is toggled (#33077) 2026-04-09 13:14:41 +00:00
Will Hunt b4d0c21abf Update URL Preview settings (#32992)
* Remove ability for url previews to be set per-room

* Add ability to enable E2EE URL Previews globally

* Remove old migration

* Cleanup

* Remove room account handler

* update snap

* screenshot updated

* Add a test
2026-04-09 12:32:50 +00:00
Robin 253dcb44dd Show a 'grab' cursor on picture-in-picture view (#33079)
* Remove unused 'draggable' prop from PictureInPictureDragger

* Show a 'grab' cursor on picture-in-picture view

To give it a proper affordance for dragging.
2026-04-09 12:25:14 +00:00
Zack 70e40009a3 Fix issues with /me emote two liner (#33081)
* Fix issues with me emote liner

* Fix Prettier
2026-04-09 12:13:02 +00:00
Valere Fedronic 6486a6b5ff Add user friendly capability text for msc4039.download_file (#32983)
* Add user friendly capability test for `msc4039.download_file`

* review: remove un-needed experimental copy
2026-04-09 11:08:08 +00:00
Joao Pedro Antunes Borie 5ba09a5f90 Fix #32727: Ensure VoiceRecording uses the selected microphone (#32887)
Voice messages were being recorded using the system default microphone
instead of the device selected in Element settings.

This was fixed by ensuring the preferred deviceId is correctly passed
to the MediaStream constraints in VoiceRecording.ts.

Added unit tests in VoiceRecording-test.ts to verify that the
application correctly requests the user-selected device.

Co-authored-by: Will Hunt <2072976+Half-Shot@users.noreply.github.com>
2026-04-09 11:07:32 +00:00
renovate[bot] bbe4280c2c Update testcontainers docker digests (#33075)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-08 14:39:14 +00:00
Florian Duros 121c2d18e9 Room list: fix expanded/collapse state of sections (#33074)
* fix: section being empty in flat list mode

When switching space (or removing a section later), if the Chat section
is collpased and the room list is in flat list mode in the other space,
the room list is empty.

The fix forces the section to be in expanded state if in flat list mode

* fix: store section expanded state by space
2026-04-08 13:44:52 +00:00
dependabot[bot] 4cc51a6756 Bump lodash from 4.17.23 to 4.18.1 (#33071)
* Bump lodash from 4.17.23 to 4.18.1

Bumps [lodash](https://github.com/lodash/lodash) from 4.17.23 to 4.18.1.
- [Release notes](https://github.com/lodash/lodash/releases)
- [Commits](https://github.com/lodash/lodash/compare/4.17.23...4.18.1)

---
updated-dependencies:
- dependency-name: lodash
  dependency-version: 4.18.1
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

* -es

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2026-04-08 10:10:03 +00:00
Zack d197fb4e30 Refactor and Move TileErrorBoundary to Shared Components (#32793)
* creation of stories and view in shared-components

* migrate EventTile error fallback to shared TileErrorView MVVM

* Fix lint errors and unused import

* Update tests because of the refactoring

* Update snapshots + stories

* removal of mxEvent since it never changes in timeline

* Update packages/shared-components/src/message-body/TileErrorView/TileErrorView.stories.tsx

Co-authored-by: Florian Duros <florian.duros@ormaz.fr>

* Update apps/web/src/viewmodels/message-body/TileErrorViewModel.ts

Co-authored-by: Florian Duros <florian.duros@ormaz.fr>

* Update apps/web/src/viewmodels/message-body/TileErrorViewModel.ts

Co-authored-by: Florian Duros <florian.duros@ormaz.fr>

* docs: add TileErrorView tsdoc

* docs: add TileErrorViewModel tsdoc

* docs: add view source label tsdoc

* refactor: move tile error layout into vm

* docs: add TileErrorView story view docs

* docs: move tile error story list wrapper

* refactor: remove unused tile error event setter

* Update packages/shared-components/src/message-body/TileErrorView/TileErrorView.stories.tsx

Co-authored-by: Florian Duros <florian.duros@ormaz.fr>

* docs: add tsdoc for event tile error fallback props

* refactor: rely on snapshot merge no-op checks

* remove unessecery if statment

* test: restore EventTile mocks in afterEach

* test(shared-components): move TileErrorView baselines

---------

Co-authored-by: Florian Duros <florian.duros@ormaz.fr>
2026-04-08 09:05:31 +00:00
renovate[bot] 6e9fc9b8fa Update npm non-major dependencies (#33001)
* Update npm non-major dependencies

* Update snapshot

* Patch plist for compatibility with updated @xmldom/xmldom

* Lockfile

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2026-04-08 07:40:43 +00:00
ElementRobot 4beaa52b28 [create-pull-request] automated change (#33068)
Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
2026-04-08 07:09:57 +00:00
RiotRobot e0cddf8e4a Merge branch 'master' into develop 2026-04-08 07:52:55 +00:00
RiotRobot 8567084409 v1.12.15 2026-04-08 07:48:17 +00:00
RiotRobot 7f5ab70478 v1.12.15-rc.0 2026-04-08 07:26:28 +00:00
renovate[bot] 1dcc19b4b6 Update playwright (#33060)
* Update playwright

* Update snapshots

* Update types

* Update snapshot

* Update playwright-common

* Remove stale screenshots

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2026-04-07 16:16:57 +00:00
R Midhun Suresh edea3fffdf Collapsible Left Panel - Ensure that panels have non-fractional widths (#33052)
* Expand panel to full width

* Write tests

* Resize to nearest whole number if necessary

* Update screenshots

* Early return when resizing to whole width

* Update screenshot
2026-04-07 15:44:51 +00:00
Michael Telatynski 6c1dc7051f Accessibility improvements in settings (#32968)
* Add more playwright axe tests to settings dialogs

* Fix axe issue heading-order

* Fix heading order

* Iterate

* Update snapshots

* Iterate

* Update snapshots

* Iterate

* Update screenshot

* Iterate

* Iterate

* Update snapshot
2026-04-07 15:17:59 +00:00
RiotRobot 592d7ca6b6 Reset matrix-js-sdk back to develop branch 2026-04-07 13:27:46 +00:00
RiotRobot 63aa8cad6a Merge branch 'master' into develop 2026-04-07 13:27:10 +00:00
RiotRobot dbac03cbce v1.12.14 2026-04-07 13:23:44 +00:00
RiotRobot c11f6dd966 Upgrade dependency to matrix-js-sdk@41.3.0 2026-04-07 13:18:51 +00:00
Will Hunt 5de316b752 Move Low Bandwidth feature to devtools. (#32797)
* Move and rename low bandwidth mode.

* Still in use.

* remove string

* Add a test for low bandwidth mode

* Test requests too

* update snaps

* New year!
2026-04-07 12:16:35 +00:00
R Midhun Suresh 6b00466a85 Collapsible Left Panel - Clicking on separator should expand to 100% when no width is available in settings (#33053)
* Expand panel to full width

* Write tests
2026-04-07 12:05:36 +00:00
renovate[bot] 2bef316bed Update dependency caniuse-lite to v1.0.30001781 (#32996)
* Update dependency caniuse-lite to v1.0.30001781

* Update tests

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2026-04-07 10:02:33 +00:00
ElementRobot c05795c1bb Localazy Download (#33049)
* [create-pull-request] automated change

* Discard changes to apps/web/src/i18n/strings/en_EN.json

---------

Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2026-04-07 08:35:25 +00:00
Will Hunt cffd8cfd70 Disallow links without protocol (e.g. starting with http(s)://) in LinkedText. (#32972)
* Disallow links without protocols in LinkedText.

* Update tests
2026-04-07 07:53:06 +00:00
Florian Duros 46bff1f9e6 Room list: add activity marker to sections (#33024)
* feat: add unread status to section view

* feat: add unread tracking in room list section

* feat: populate rooms into section header vm

* test: add units for unread in section view model

* test(e2e): add unread tests
2026-04-06 19:05:45 +00:00
ElementRobot b1ed35e9b8 [create-pull-request] automated change (#33038)
Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
2026-04-03 06:55:51 +00:00
Richard van der Hoff 5e140768f0 InviteDialog: remove broken checks for unknown users (#33026)
* InviteDialog: remove broken checks for unknown users

Per https://github.com/element-hq/element-web/issues/33020, this doesn't
actually work, and if we were to bring it back, we'd design it differently.

* Remove now-unused `UserProfilesStore.getProfileLookupError`

This was only used in `InviteDialog.checkProfileAndStartDm`, which has now been
removed.
2026-04-02 15:31:29 +00:00
renovate[bot] d7a5659180 Update dependency domutils to v4 (#33007)
* Update dependency domutils to v4

* Tweak jest config

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2026-04-02 14:28:43 +00:00
renovate[bot] 063e0802f4 Update dependency knip to v6 (#33008)
* Update dependency knip to v6

* Make knip happy

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2026-04-02 13:38:58 +00:00
Michael Telatynski 2d3e2fcb70 Remove global h2 css rule in favour of heading styles/components (#32969)
* Remove global h2 css rule in favour of heading styles/components

* Use Compound Heading in shared-components

and forbid hX elements

* Use Compound Heading in settings

add back margin to some legacy headings

* Tweak some headings

* Update screenshots

* Update screenshots

* Update snapshots

* Tweak .gitignore

* Update snapshots

* Iterate

* Update screenshots

* Update screenshots

* Update screenshot
2026-04-02 16:13:17 +00:00
ElementRobot f6461ed944 [create-pull-request] automated change (#33016)
Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
2026-04-02 10:26:38 +00:00
Michael Telatynski b790019ecc Fix EventListSummary not unbinding event listeners (#33006) 2026-04-02 09:03:50 +00:00
rbondesson 4315038346 Refactor MessageActionBar using MVVM and move to shared-components (#32784)
* Refactor MessageActionBar into MVVM ActionBarView

* Adding tooltips for menu items and correct i18n strings

* Layout changes

* Renaming some properties

* Rename property

* Create a first version of the view model and refactor media visibility logic

* Refactor view to take options and rections menu as optional properties

* Cleaner interface between view and view model

* Refactor view properties and replace Menu and MenuItem

* Bugfixes and switching to ActionBarView instead of MessageActionBar in element-web

* Avoid creating view models and render toolbar until it is actually shown

* Added unit and playwright tests and documented the view

* Added view model unit tests and updated snapshots of dependant tests

* Remove unused components and unnecessary css

* Remove unused language tags

* Fix for handling join-rules correctly

* Prettier

* Add handling of stale view model in async calls

* Prettier

* Split the element-web css into two different. One for legacy components and one for the ActionBarView

* Missing variables used for linting

* Fix for showing ActionBarView when using keyboard for navigation

* Handle visibility on context menu closing

* ThreadPanel uses the ActionBarView so restore css rule

* Fix for visibility of the ActionBarView in Thread panel

* Fix for ActionBarVuew visibility when closing right-click context menu and not still hovering

* Add roving index to function as a toolbar

* Adjust the RoomView test to send hover to the EventTile instead of the message text

* Fix SonarCloud issues

* Fix for SonarCloud issue

* Merge fix

* Rename mx_LegacyActionBar to mx_ThreadActionBar

* Added documentation and simplified join rules

* Generalize the ActionBarView and move logic to view model

* Add the four new buttons to the ActionBarView

* Update view model and tests to use the updated ActionBarView

* Refactor element-web to use ActionBarView

* Clean up styling in element-web

* Clean up and updating snaps and screenshots

* Added unit-tests for better coverage

* Moving ActionBarView to the correct folder in shared components

* Update snaps in element-web

* Better documentation in stories

* Merge fixes

* Updates after review comments

* Review comment fixes

* Added documentation to view models and updated snaps

* Hide button had the wrong label

* Replace createRef with useRef
2026-04-01 12:27:03 +00:00
Zack 0391543bbc Refactor and move MVideoBody to shared components (#32849)
* init MVideoBody to shared components, including test, stories and view

* fix prettier and other warnings

* move video message body to shared view + app viewmodel

* Fix prettier warnings and masking spinner for tests

* stabilize VideoBodyView screenshots with local media asset

* Disable spinner from changing image all the time

* Added mask over video spinner to prevent issues with new generated images on playwright tests

* Update prettier fix

* Update snapshot

* Add tests to cover different states of Video

* Update code to prevent the previous component Hack fix regarding jumps on the timeline.

* Update snapshot

* Update code to improve code quality for Sonar + update snapshot

* adde documentation snippets

* refactor: move m.video rendering into body factory

* docs: add tsdoc for video body view model

* docs: add thumbnail tsdoc for video body view model

* docs: add content-url tsdoc for video body view model

* docs: add dimensions tsdoc for video body view model

* docs: add aspect-ratio tsdoc for video body view model

* docs: add tsdoc for video body view state

* refactor: replace video body view state enum

* refactor: remove duplicate video body state init

* refactor: drop unused video body view state attribute

* Fix Prettier

* Update snapshot screenshot

* test: restore video story screenshot mask

* chore: refresh PR head

* Add mask to screenshot to pass CI tests

* test: narrow video story mask hook

* Fix easy Sonar warnings in video body components

* Move shared message body views into event-tile layout

* Move shared message body visual baselines

* Revert unrelated shared message body moves
2026-04-01 09:48:22 +00:00
JephDiel 3e04b24d1e Allow Element Call to use MSC4039 (#32755)
* Allow Element Call to use MSC4039

Allow Element Call to use MSC4039 so it can
download avatars if it can't authenticate with the
server directly.

* Test Allowing Element Call to use MSC4039

---------

Co-authored-by: Valere Fedronic <bill.carson@valrsoft.com>
2026-04-01 08:14:16 +00:00
renovate[bot] e2ffaef7c3 Update sanitize (#33012)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-04-01 00:28:32 +00:00
renovate[bot] 93ca06d6b7 Update dependency mini-css-extract-plugin to v2.10.2 (#32997)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-31 22:44:27 +00:00
renovate[bot] e9dbddfc97 Update Node.js to 27e462f (#32994)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-31 22:07:46 +00:00
renovate[bot] 319044f2f9 Update nginxinc/nginx-unprivileged:alpine-slim Docker digest to b5831ee (#32993)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-31 22:07:05 +00:00
renovate[bot] f1c0e556ab Update pnpm to v10.33.0 (#33004)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-03-31 20:54:22 +00:00