64808 Commits

Author SHA1 Message Date
ElementRobot
e8ddff0ad8
[create-pull-request] automated change (#31980)
Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
2026-02-06 06:36:25 +00:00
David Langley
6da1412de8
Migrate the room list view to shared components (#31921)
* Add NotificationDecoration component

Add the NotificationDecoration component to shared-components.
This is a leaf component that renders notification badges and indicators
for rooms/items including mentions, unread counts, call indicators, etc.

* Add RoomListItem component

Add the RoomListItem component to shared-components.
Includes context menu, hover menu, notification menu, and more options menu.

* Add RoomListPrimaryFilters component

Add filter chips component for filtering the room list by
unread, people, rooms, favourites, mentions, invites, and low priority.

* Update VirtualizedList component

Update VirtualizedList to support the room list virtualization requirements.

* Add RoomList component

Add RoomList component that renders a virtualized list of room items.
Includes story mocks for testing.

* Add RoomListView component

Add RoomListView component that composes RoomList with filters,
empty states, and loading skeleton.

* Export room-list components from shared-components

Add exports for RoomListView, RoomListItem, RoomListPrimaryFilters, and RoomList.
Include i18n strings for room list components.

* Add RoomListItemViewModel

Add view model for individual room list items.
Manages per-room subscriptions and updates only when specific room data changes.

* Add RoomListViewViewModel

Add view model for the room list view.
Manages room list state, filtering, keyboard navigation, and child view models.

* Integrate shared components into RoomListView

Update RoomListView to use the new ViewModels and shared components.
Includes i18n string updates for element-web.

* Remove old room list implementation

Remove old ViewModels, hooks, and view components that are now
replaced by the shared-components implementation.

* Update sliding-sync playwright test

Update test expectations for new room list implementation.

* Add figma links

* Move viewModels to the right folder

* Rename to RoomListEmptyStateView

* Update VirtualizedRoomListView naming

* Update screenshots and snapshots

* Move viewmodel tests to the right location and fix some imports

* lint

* Use unknown as an Opaque type rather than any. It discourages property access within shared components and can still be cast back in EW.

* Update screenshots for new shared component rendering params

* Make room order tests deterministic
2026-02-05 21:05:14 +00:00
renovate[bot]
6dba71a453
Update dependency @playwright/test to v1.58.1 (#31957)
* Update dependency @playwright/test to v1.58.1

* Update snapshots & screenshots

* Another screenshot

* Un-focus room tile and scroll it into view

possibly some change in what ends up focused after a popup disappears

* uncomment the screenshots

* Correct screenshot

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: David Baker <dbkr@users.noreply.github.com>
2026-02-05 16:41:48 +00:00
Hiroshi Shinaoka
8de804d0c0
fix: Remove state_key: null from Seshat search results (#31524)
* fix: Remove state_key: null from Seshat search results

Seshat includes "state_key": null for non-state events, which causes
matrix-js-sdk to incorrectly treat them as state events. This prevents
encrypted messages from rendering properly in search results.

This fix removes the null state_key from search results and context
events before passing them to the SDK.

* test: cover local search null state_key edge cases

* test: satisfy strict types in searching coverage test

---------

Co-authored-by: David Baker <dbkr@users.noreply.github.com>
2026-02-05 16:19:02 +00:00
David Baker
1d7fd0b9d3
Add options for consistent screenshots (#31973)
* Add options for consistent screenshots

Attempt 2

* Update aaaaaaaal the snapshots

or the ones with text, anyway

* Add comment

* prettier
2026-02-05 11:21:44 +00:00
renovate[bot]
00e1068758
Update css (#29050)
* Update css

* Fix css references to resources

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-02-05 11:06:37 +00:00
ElementRobot
2a8ea7a230
[create-pull-request] automated change (#31976)
Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
2026-02-05 09:24:10 +00:00
Florian Duros
b82c34d9d3
doc: add note about Flex And Box in code style (#31962) 2026-02-05 09:18:02 +00:00
Florian Duros
7738be32ec
chore: allow 3px of difference in SC visual tests (#31972) 2026-02-04 16:56:08 +00:00
renovate[bot]
a05b359c28
Update dependency caniuse-lite to v1.0.30001766 (#31954)
* Update dependency caniuse-lite to v1.0.30001766

* Update browser versions

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: David Baker <dbkr@users.noreply.github.com>
2026-02-04 15:48:53 +00:00
Michael Telatynski
2a1708aa27
Fix user pill deserialisation (#31947)
when containing slashes

This also fixes `m.mentions` calculations on edits

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2026-02-04 14:26:05 +00:00
renovate[bot]
bef626a61c
Update dependency matrix-widget-api to v1.17.0 (#31958)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-04 14:20:28 +00:00
renovate[bot]
323a325981
Update docker.io/docker/dockerfile Docker tag to v1.21 (#31959)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-04 14:03:06 +00:00
Zack
c647c8ee3d
Refactor Timeline Seperator (#31937)
* Refactor TimelineSeparator to shared-components package

  • New TimelineSeparator component in packages/shared-components/
  • Updated MessagePanel.tsx to import from shared-components

* Fix copyright text

* Timeline Unit Tests + Timeline Snapshot Tests

* Imported correct timeline seperator

* Update snapshots because of css update

* Apply suggestion from @florianduros

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

* Created className prop

* Removal of element x unused css

* Update snapshot because of Flex

* Update snapshots because of Flex

* Update css to correct values and compund name

* Added letter spacing to timelineseperator

* rremoval of letter spacing

* added align center to flex to apply correct css changes

* Update snapshots to reflect new css changes

* Update snapshots to reflect css changes

* Added letter-spacing to timeline seperator

* Update snapshots after css update

* update snapshots

---------

Co-authored-by: Florian Duros <florian.duros@ormaz.fr>
2026-02-04 13:25:36 +00:00
Andy Balaam
ea302162ee
Remove unused UIFeature.BulkUnverifiedSessionsReminder setting (#31943) 2026-02-04 12:32:15 +00:00
renovate[bot]
b9de284c39
Update npm non-major dependencies (#31960)
* Update npm non-major dependencies

* Fix type

* Katex comes with its own types now

Or possibly it always had them but they just put them in the package.json

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: David Baker <dbkr@users.noreply.github.com>
2026-02-04 11:21:16 +00:00
Florian Duros
877ab183d9
refactor: move Clock from class component to functional component (#31964) 2026-02-04 11:15:06 +00:00
ElementRobot
ae013686f5
[create-pull-request] automated change (#31968)
Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
2026-02-04 06:43:01 +00:00
ElementRobot
d54d082d21
[create-pull-request] automated change (#31967)
Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
2026-02-04 06:33:18 +00:00
renovate[bot]
2039a2a5bb
Update storybook to v10.2.3 (#31956)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-03 21:47:47 +00:00
renovate[bot]
679e8442a0
Update dependency eslint-plugin-storybook to v10.2.3 (#31955)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-03 18:13:00 +00:00
renovate[bot]
d08ae5d30b
Update peter-evans/create-pull-request digest to c0f553f (#31953)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-03 18:09:10 +00:00
renovate[bot]
79f7398d7c
Update guibranco/github-status-action-v2 digest to 9bfa877 (#31950)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-03 17:29:06 +00:00
renovate[bot]
510365c96b
Update nginxinc/nginx-unprivileged:alpine-slim Docker digest to 9ac6a90 (#31951)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-03 17:02:22 +00:00
renovate[bot]
34268cc29a
Update Node.js to 8036dbe (#31952)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-03 16:52:19 +00:00
renovate[bot]
31cfa204b6
Update actions/cache digest to cdf6c1f (#31948)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-03 15:44:11 +00:00
Michael Telatynski
4602ae8cb1
Copy labels from element-desktop repo (#31946)
in preparation for issue transfer

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2026-02-03 15:31:38 +00:00
renovate[bot]
6269fb290b
Update docker/login-action digest to c94ce9f (#31949)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-02-03 15:21:08 +00:00
Andy Balaam
6d7def7b10
Move the upgraderoom command into its own subdirectory of slash-commands (#31941)
* Move the code for running the upgrade command into its subdir

* Replace use of deprecated currentState property in runUpgradeRoomCommand

* Move upgraderoom command options into their own file

* Move upgraderoom tests into their own file and add a couple
2026-02-03 15:02:54 +00:00
rbondesson
a1be203683
Move EventTileBubble to shared components (#31911)
* Move EventTileBubble to shared components as is

* Added documentation and updated stories and unit tests

* Move 'global' element web css to _common.pcss

* Adding playwright snapshots

* Updated comments

* Added legacy mx_MessageTimestamp class and updated snapshots

* Regenerate snapshots with correct hash

* Changes to css and removed timestamp from properties after review.

* Update screenshot for room-list and fix flaky CI playwright test.

* Blur the play button before matching screenshots

* Changed to button focused instead of blur for consistancy

* Stabilize play button appearance in CI (disabled due to decoding)

* Force play button appearance in CI (disabled due to decoding)

* Add comments on playwright test changes.
Change from React.RefObject<any> to Ref<HTMLDivElement> in EncryptionEvent.tsx

* Update playwright/e2e/composer/CIDER.spec.ts

Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>

* Update playwright/e2e/composer/CIDER.spec.ts

Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>

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

Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>

---------

Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2026-02-03 14:37:57 +00:00
Andy Balaam
eb909f1090
Remove unused function to auto-rageshake when key backup is not set up (#31942) 2026-02-03 12:52:12 +00:00
Richard van der Hoff
af55def428
Add badge for history visibiltity to room info panel (#31927)
* Add `HistoryVisibilityBadge` shared component

* Add `historyVisibility` to `RoomSummaryCardViewModel`

* Add a history visibility badge to the room info panel

* Allow roominfo panel badges to wrap

Now that we have an extra one, it's quite likely we'll have to spill onto more
lines.

* update screenshots

* Set icons in badges to be 16px

Having discussed this with the design team, the icons in badges should be 16px, not 13px,
at default font size settings.

* Add stories for all history visibility states

* fix incorrect use of useRoomState

* fix snapshots

* more snapshot updates

* Update screenshots
2026-02-03 12:50:00 +00:00
ElementRobot
92615272ce
[create-pull-request] automated change (#31944)
Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
2026-02-03 06:34:40 +00:00
Andy Balaam
1b082a248c
Support additional_creators in /upgraderoom (MSC4289) (#31934)
Signed-off-by: Andy Balaam <andy.balaam@matrix.org>
2026-02-02 16:21:42 +00:00
Richard van der Hoff
7c3cf696fd
Fix failure to update room info panel on joinrule change (#31938)
* Fix failure to update room info panel on joinrule change

Currently, if the join rules are updated, the room info panel is not updated
until the panel is re-rendered. This is due to a misuse of `useRoomState`.

* Update documentation and types on `useRoomState`

This hook is useless without a `mapper` function, so let's mandate it. Also
improve the documentation while we're here.
2026-02-02 16:08:03 +00:00
ElementRobot
0053bedc38
[create-pull-request] automated change (#31935)
Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
2026-02-02 06:49:46 +00:00
ElementRobot
674d64ac12
[create-pull-request] automated change (#31929)
Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
2026-01-31 06:26:50 +00:00
David Baker
7dbffb348d
Throttle notification state calculation (#31922)
Because every room in a space will emit a notification state change
when push rules change so we would otherwise recalculate the space
notification state for every room in the space, On^2 style.
2026-01-30 17:09:02 +00:00
rbondesson
25d24d478f
Refactor DecryptionFailureBody using MVVM and move to shared-components (#31829)
* Refactor DecryptionFailureBody to MVVM and moving it to shared components

* Added unit test for DecryptionFailureBodyViewModel

* Removing the dependency to matrix.js-sdk from the shared component

* Kepp class mx_EventTile_content for tile layout

* Required changes after rebase

* Updates after PR review requests

* Clean up unused translation tags in element-web

* Added missing unit tests to improve coverage

* Additional unit tests to improve test coverage

* Removing obsolete tests from the snap

* Only listen to verification state changes in the wrapper components and also limit the view model to only allow updates in verification state.

* Updates after review requests

* Updated and added missing playwright snapshots

* Bettter structure on view model

---------

Co-authored-by: Florian Duros <florianduros@element.io>
Co-authored-by: Zack <zazi21@student.bth.se>
2026-01-30 12:44:23 +00:00
Zack
62c7fe5408
Refactor ReactionsRowButtonTooltip to shared-components (#31866)
* Setting up structure for the init refactoring of ReactionsRowButtonTooltip

* implemented example to follow for refactoring to MVVM

* Refactoring of ReactionsRowButtonTooltipView

* updated reactionrowbutton to use our new viewmodel and removed unessecery comments

* Updated children from reactnode to propswithchildren

* removal of children on the vm have it as a props

* implemented constructor into reactionrowbutton to use vm to viewmodel

* Removal of old component

* Added ViewModel Tests for new viewmodel

* Fix issues after merging develop

* Updated import placement for eslint failure CI

* Add tests for ReactionsRowButton ViewModel integration and click handlers to pass coverage

* Added more tests to cover all conditions

* Pass MatrixClient as prop instead of using global; replace expect(true).toBe(true) with not.toThrow()

* Added new snapshot to reflect modifications on tests

* Update images to fit the CI tests

* Optimize reactions tooltip viewmodel updates

* Removal of module.css for reactionbuttontooltip, we dont need it since we dont use any css

* Fixed snapshots to show the tooltip by introducing a boolean to set open to true in Storybook.

* Update snapshots

---------

Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2026-01-30 11:53:57 +00:00
ElementRobot
8cef5df140
[create-pull-request] automated change (#31918)
Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
2026-01-30 06:40:43 +00:00
ElementRobot
8381c435a1
[create-pull-request] automated change (#31917)
Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
2026-01-30 06:32:46 +00:00
Michael Telatynski
e07e26cae5
Fix emoji verification responsive layout (#31899)
* Extract SasEmoji to shared-components

and improve responsive layout

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

* Add baseline screenshots

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

* Update tests

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

* Fix e2e test

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

* Add SasEmoji snapshot test

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

* Add figma link

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

* Improve doc

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

* Add new dir to crypto-web-reviewers codeowners as per ask

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2026-01-29 17:40:04 +00:00
Richard van der Hoff
24018f7e94
Update room header icon for world_readable rooms (#31915)
Followup on #31879: change the icon shown for world_readable rooms.
2026-01-29 14:31:21 +00:00
ElementRobot
b31527261d
[create-pull-request] automated change (#31862)
Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
2026-01-29 10:57:38 +00:00
Marc
8bb1cb5e63
MVVM WidgetContextMenu component to shared component (#31190)
* Create WidgetContextMenu component in shared-components

* Modify WidgetMenuContext call (apptile, extensioncard, widgetcard), test and stories

* Correctly use new widgetcontextmenu component

* WidgetContextMenuViewModel unit test

* Lint and add comments

* Finalize widgetcontextmenuviewmodel test

* fix lint errors

* Fix test error

* Update playwright screenshots

* add userWidget in widgetcontexstmenu props

* Fix some a11y issues on playwright

* fix linter error widget card

* Use new i18n way for share component widget context menu

* Add i18n context provider for widget context menu

* chore: lint and update snapshot widgetcontextmenu
2026-01-29 10:22:47 +00:00
ElementRobot
8769165e88
[create-pull-request] automated change (#31910)
Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
2026-01-29 06:31:55 +00:00
David Baker
4daf227137
Add patch for linkify to fix doctype handling (#31900) 2026-01-28 10:46:06 +00:00
ElementRobot
f0f93decfd
[create-pull-request] automated change (#31901)
Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
2026-01-28 06:23:02 +00:00
renovate[bot]
e5f0ea79e5
Update playwright (#31895)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2026-01-27 16:48:33 +00:00