Commit Graph
70226 Commits
Author SHA1 Message Date
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
313d5097a0 Update dependency postcss-nested to v8.0.1 (#34587)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-06 13:53:42 +00:00
5e25b3d96c Surface an error when a downloaded file can't be opened instead of failing silently (#33998)
Pressing "Open" on the download-complete toast called shell.openPath and discarded the
result with `void`. openPath resolves to a non-empty error string on failure (an empty
string means success), so when the file had been moved or deleted the open silently did
nothing and the user saw no response at all (#32273).

Await the result and, on a non-empty error, log it and show an error dialog carrying the
underlying error as its detail.

Co-authored-by: R Midhun Suresh <hi@midhun.dev>
2026-08-05 22:44:55 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>Michael Telatynski
dacea3463a Update npm non-major dependencies (#34446)
* Update npm non-major dependencies

* Iterate

* Iterate

* Oxlint & Knip

* Oxlint

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2026-08-05 21:29:30 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
7a908483c0 Update dependency vite to v8.2.0 (#34536)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-05 17:02:34 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
4c36eb408d Update react (#34533)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-05 15:40:36 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
27f0347668 Update dependency nx to v23.1.1 (#34530)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-05 15:34:04 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
a633b46dc6 Update storybook to v10.5.5 (#34440)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-05 14:52:33 +00:00
hayyaksiandGitHub eab7704b98 Keep emoji at code size inside code blocks so line numbers stay aligned (#34497) 2026-08-05 14:50:25 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>Michael Telatynski
d1e176bd2a Update dependency eslint-plugin-storybook to v10.5.5 (#34539)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2026-08-05 14:27:06 +00:00
a4f63cdd22 Emoji picker to shared components (#34337)
* Exploration of a virtuoso-powered emoji picker

moved to shared components

Fable generated

* fix pnpm lock

* format & fix some lint issues

* wrong import

* fix lint warning

* Fix off-by-one

and remove manual overflow adjustment: let's leave the default unless
it turns out to be necessary. Emoji should not take that long to load.

* Convert to functional component

* WIP: change to one big virtuoso scroller

* Change to use virtuoso's own onRangeChanged

and santitise category data and how it's passed around

* Convert Tabs to functional component

and put the focusing behaviour back with it just keeping track of
refs by itself.

* Absorb two line config file into main component

* Actually add the config to the main file

* Convert emoji to functional

Also make selected always defined and use useCallback.

* QuickReactions to functional component

* Non-default exports & doc

* Search to functional component

* Well it seems to work just fine now

* Use ref prop

* fix lockfile AGAIN

* lint

* Remove default export

* Remove some mx_ classnames and fix the inputRef

to make the arrow keys in the search box work (well, work as much as
they ever did).

* Remove last of the mx_ id / classnames

(except the one in the test)

* Use useMemo to memoize

* No need to export props interface (I think?)

and fix comment now we don't do the mutation stuff anymore

* Fix test

* Fix axe violations & add screenshots

* Avoid comparing dom snapshots in test

* Allow more before or after, just compare order of the ones present in both.

* Switch existing usages to new emoji picker

and kill the old one with fire

* Unused stuff

* Remove i18n strings

* Fix some tests

* Update screenshots

* Fix test

by removing the last of the weird memoized-but-mutated data structure

* Move the string somewhere more sensible than 'a11y'

* i18n lint

* Give the emojis IDs so aria-activedescendant works

* Fix more tests

* Add a small wrapper emoji picker component

This lets us easily memoize the recent emojis when the emoji picker is opened.
Also it saves a bit of boilerplate.

* Remove old emojipicker css

* Typos

Co-authored-by: David Langley <davidl@element.io>

* Use compound constants

* Rethemendex

* Use catalog version for emojibase

* Add comments

* More comments

* Fix comment

* More comments

* more comments (and make them uniform)

* More comments

* Fix pnpm lock again

* Another comment

* Apply button types to new version

* Add comment

* Disable screenshot

as per comment

---------

Co-authored-by: Will Hunt <2072976+Half-Shot@users.noreply.github.com>
Co-authored-by: David Langley <davidl@element.io>
2026-08-05 13:44:35 +00:00
Michael Telatynski 023f8ea35a Reset matrix-js-sdk back to develop branch 2026-08-05 13:53:32 +01:00
Michael Telatynski b4f7cf665d Merge remote-tracking branch 'origin/master' into develop
# Conflicts:
#	pnpm-lock.yaml
2026-08-05 12:31:36 +01:00
c8f75a4f7c Make permalinks to the same event work more than once (#34483)
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2026-08-05 10:37:22 +00:00
Michael TelatynskiandGitHub 97851e6463 Fail Electron Builder if missing deps (#34556)
* Fail Electron Builder if missing deps

* Iterate

* Whoops
2026-08-05 10:37:21 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
4b6dfb1cfb Update testcontainers docker digests (#34569)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-05 10:18:58 +00:00
R Midhun SureshandGitHub 01640bb8d6 Remove code to round newSize on resize (#34543)
This never actually fixed the issue of the call elements being blurry
due to fractional pixels. But it also causes other issues like the
max/min width of the left panel never being persisted in settings.
2026-08-05 10:13:38 +00:00
Michael TelatynskiandGitHub 06bedd0e5a Satisfy pnpm audit (#34568) 2026-08-05 09:59:15 +00:00
hayyaksiandGitHub 3e043a6f3a Do not ask for a room address when the room already has one (#34499) 2026-08-05 09:51:32 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
b9b0df4e6e Update ghcr.io/element-hq/element-web:latest Docker digest to ac50d4e (#34528)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-05 09:24:51 +00:00
RiotRobot a2a996ae50 v1.12.25 2026-08-05 09:08:08 +00:00
hayyaksiandGitHub 386a66c19c Show the filename in the audio player title when the event has one (#34479)
MAudioBody passed the event body straight to the player, so an audio message
sent with a caption showed the caption text instead of the file name. It now
uses presentableTextForFile, the same helper m.file and m.image already use.

Fixes https://github.com/element-hq/element-web/issues/31116
2026-08-05 08:56:26 +00:00
Michael TelatynskiandGitHub 88553b93b5 Stabilise Vitest MatrixChat test (#34555)
* Stabilise Vitest MatrixChat test

* Ignore post-teardown exceptions in vitest

* Iterate
2026-08-05 08:51:02 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
dd80fa8697 Update dependency postcss-nested to v8 (#34540)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-05 08:50:52 +00:00
8bb0e5d590 [create-pull-request] automated change (#34564)
Co-authored-by: t3chguy <2403652+t3chguy@users.noreply.github.com>
2026-08-05 07:25:44 +00:00
hayyaksiandGitHub a2e4b7e395 Treat an unset profile field as unchanged in collapsed membership summaries (#34493) 2026-08-04 17:37:14 +00:00
hayyaksiandGitHub 74ac300f72 Open space settings when editing a space topic (#34477)
SpaceRoomView renders RoomTopic for the space home view, but the Edit topic button in
the topic dialog dispatched open_room_settings unconditionally, so a space opened the
room settings dialog instead of its own.

Branch on room.isSpaceRoom() and use the existing showSpaceSettings() helper.
2026-08-04 17:36:17 +00:00
Michael TelatynskiandGitHub accfbc6f57 Add tag prefix to release drafter configuration
Added tag prefix for module releases in release drafter configuration.
2026-08-04 18:13:11 +01:00
Michael TelatynskiandGitHub 49e3114809 Update resolution path for eslint-plugin-element-call 2026-08-04 15:46:41 +01:00
RiotRobot 675fd031ed Upgrade dependency to matrix-js-sdk@42.1.0 2026-08-04 14:45:38 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>Michael Telatynski
239ef1cdea Update Node.js to f725017 (#34538)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2026-08-04 12:19:48 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
97b9a20cfd Update Node.js to f70403e (#34537)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-04 12:19:29 +00:00
Michael TelatynskiandGitHub 4aa1a3549e Enable oxlint restriction ruleset (#34307)
* Remove stale max-len disablements

* Remove stale camelCase & naming-convention disablements

* Remove stale ban-ts-comment disablements

* Remove stale no-var disablements

* Remove stale no-empty-property disablements

* Remove stale react rule disablements

* Remove stale no-constant-condition disablements

* Remove stale no-unused-vars disablements

* Remove stale disablements for disabled rules

* fixup camelcase

* Remove dead code

* Tidy code

* Tweak oxlint config

* Use oxlint to apply jsx/tsx extension consistently

* Fix import

* Fix imports

* Rename affected snapshots

* Update more imports

* Enable restriction ruleset

* Make code comply with new rules

* Make code comply with react/button-has-type

* Make code comply with typescript/non-nullable-type-assertion-style

* Comply with node/no-process-env

* Comply with unicorn/prefer-node-protocol

* Comply with unicorn/import-style

* Comply with unicorn/no-process-exit

* Comply with no-proto

* Comply with node/handle-callback-err

* Comply with import/no-commonjs

* Comply with node/no-path-concat

* Comply with unicorn/no-length-as-slice-end

* Comply with unicorn/no-document-cookie

* Comply with unicorn/prefer-module

* Comply with typescript/prefer-literal-enum-member

* Comply with jsx-a11y/anchor-ambiguous-text

* Tweak oxlint config

* Fix resolves

* Iterate

* Iterate

* Iterate

* Iterate

* Iterate

* Iterate

* Iterate
2026-08-04 09:15:07 +00:00
c091ebec6e Update dependency pnpm to v11.20.0 [SECURITY] (#34250)
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2026-08-04 13:42:24 +01:00
Michael TelatynskiandGitHub d40d3d81b5 Ensure EW/ED release workflows don't run for modules (#34557) 2026-08-04 13:36:33 +01:00
Michael Telatynski ed5f72f8cf Fix module release workflow 2026-08-04 13:03:01 +01:00
Will HuntandGitHub ca3cf40040 Add a Module API for accessing storage helper functions. (#34284)
* Add a Module API for accessing the Platform.

* Drop overkill module test

* drop unused sample file

* fix import

* Update module API

* fix typo

* fix typo again

* and again

* update api
2026-08-04 08:44:38 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
a9dcdc067b Update github-actions non-major dependencies (#34535)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-04 08:41:23 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
3a390b71c5 Update webpack (#34534)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-04 08:41:17 +00:00
Michael TelatynskiandGitHub 1bec06ca52 Wire up GHA workflow to release modules (#34544)
* Wire up GHA workflow to release modules

* Iterate
2026-08-04 08:29:40 +00:00
R Midhun SureshandGitHub b45009fc4e Show thicker separator on mouse focus (#34549)
So that when you click the separator and it receives focus, it shows
differently to thinner version.
2026-08-04 08:18:10 +00:00
Michael TelatynskiandGitHub df43921ab9 Attempt to stabilise vitest (#34547) 2026-08-04 07:49:53 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
38ea87c11a Update Node.js to v24.18.1 (#34532)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-03 11:31:10 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
481bfb32c5 Update testcontainers docker digests (#34529)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-03 11:30:54 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
229f7a66bd Update dependency postcss to v8.5.25 (#34531)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-03 11:30:25 +00:00
renovate[bot]GitHubrenovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
f9d8eaf3d3 Update docker/login-action digest to dbcb813 (#34527)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-03 11:15:39 +00:00
rizzlerandGitHub fbe7dbd646 fix member list scroll bug where invited 3PID users replace joined members (#34427)
* Update MemberListView.tsx

* Update MemberListViewModel.ts

* simplify 3PID invite keys to getStateKey and added regression test

* Use state_key for 3PID invite keys and set up test state before initial render

* Format common.tsx with oxfmt
2026-08-03 10:18:29 +00:00
David LangleyandGitHub 7ffb0ffced Stop caching Vite pre-bundled deps in shared-components vitest CI (#34472)
Signed-off-by: David Langley <davidl@element.io>
2026-07-31 13:03:35 +00:00
rbondessonandGitHub 4be2863fa8 Move EventTile to shared components - #3b (#34459)
* Refactor redacted body to use render-only view model props

* Fix oxfmt issues

* Missing mock function for MBodyFacytory-test

* Convert to vitest
2026-07-31 05:18:50 +00:00
rbondessonandGitHub 82b313828a Move EventTile to shared components - #3a (#34458)
* Refactor Mjolnir body to use render-only view model actions

* Extracted isMjolnirBodyAllowed from MessageEvent

* Converted the new test file to vitest
2026-07-30 14:50:57 +00:00
rbondessonandGitHub d4d4794f7e Move EventTile to shared components - #4a (#34469)
* Add EventTile root properties to view model

* Move render-related event reads into the vm

* Remove duplicate root derivation in UnwrappedEventTile

* Move data-has-reply derivation into EventTileViewModel

* Move getEventDisplayInfo() and dependencies into EventTileViewModel

* Add tests for improved coverage

* Cleanup and comments

* Fix: Replacement events have a fallback tile but must not show their own reply chain

* Combine dependency and prop updates into one atomic VM update

* Remove property which was never read and fix oxfmt issue
2026-07-30 13:35:09 +00:00