Commit graph

40876 commits

Author SHA1 Message Date
maheichyk
71cece7641
Feeds event with relation to unknown to the widget (#12283)
* Feeds event with relation to unknown to the widget

Signed-off-by: Mikhail Aheichyk <mikhail.aheichyk@nordeck.net>

* Smaller changes

Signed-off-by: Mikhail Aheichyk <mikhail.aheichyk@nordeck.net>

---------

Signed-off-by: Mikhail Aheichyk <mikhail.aheichyk@nordeck.net>
Co-authored-by: Mikhail Aheichyk <mikhail.aheichyk@nordeck.net>
2024-02-29 14:19:17 +00:00
Florian Duros
29b79ef351
Fix TAC opening with keyboard (#12285)
* Fix TAC opening with keyboard

* Use compound tooltip and icon button

* Revert "Fix TAC opening with keyboard"

This reverts commit 5a1e5d0c

* Add missing aria-label

* Update tests

* Add tests

* Fix visual regression

* Fix remaining tooltip

* Fix ref typing

* Fix typing
2024-02-29 14:07:46 +00:00
ElementRobot
222010f08e
[create-pull-request] automated change (#12293)
Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>
2024-02-28 06:23:04 +00:00
Florian Duros
494d9de6f0
Fix buttons of widget in a room (#12288)
* Revert 3acd648 - Fix timeline position when moving to a room and coming back

* Fix initialEventId
2024-02-27 12:02:16 +00:00
David Baker
28f7aac9a5
Hide the archived section (#12286)
* Hide the archived section

* Only add archived section if necessary

* Update e2e tests
2024-02-27 10:00:10 +00:00
Timo
179d2a767e
Add theme data to EC widget Url (#12279)
* Add theme data to EC widget url

Signed-off-by: Timo K <toger5@hotmail.de>

* test theme

Signed-off-by: Timo K <toger5@hotmail.de>

---------

Signed-off-by: Timo K <toger5@hotmail.de>
2024-02-26 17:21:52 +00:00
David Baker
1403cd851a
Fix spurious session corruption error (#12280)
* Fix spurious session corruption error

Move the server versions check to each time we reconnect to the server
rather than the first time,although, as per comment it will still only
trigger the first time, but it will avoid us awaiting and mean we know
we're connected to the server when we try, and get automatic retries.

Fixes https://github.com/element-hq/element-web/issues/26967

* Move test & add regression test

* Write some more tests

* More comments & catch exceptions in server versions check

* Note caching behaviour

* Typo

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>

* Remove the bit of the comment that might be wrong

---------

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2024-02-26 15:30:32 +00:00
ElementRobot
f2101c69ec
[create-pull-request] automated change (#12284)
Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>
2024-02-26 06:22:38 +00:00
Michael Telatynski
7b1e8e3d2f
Update MSC2965 OIDC Discovery implementation (#12245)
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2024-02-23 16:43:14 +00:00
Michael Telatynski
282d71730b
Gather validated OIDC config during autodiscovery (#27047) 2024-02-23 16:43:07 +00:00
ElementRobot
729eca49e4
[create-pull-request] automated change (#12282)
Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>
2024-02-23 06:22:40 +00:00
Valere
8a70260c81
ModuleAPI: overwrite_login action was not stopping the existing client resulting in the action failing with rust-sdk (#12272)
* Fix overwrite login action not stopping client

* remove unneeded fixture for overwrite login test

* Fix playwrite bad import of app sources

* revert uneeded change on fore OnLoggedIn causing side effects

* Add unit test for overwrite login action

* remove un needed ts-ignore
2024-02-22 15:41:21 +00:00
Florian Duros
d9a20b00e0
Ignore activity in TAC (#12269) 2024-02-21 12:19:25 +00:00
Florian Duros
6d55ce0217
Use browser's font size instead of hardcoded 16px as root font size (#12246)
* WIP Use browser font size instead of hardcoded 16px

* Add font migration to v3

* Remove custom font size input

* Use a dropdown instead of a slider

* Add margin to the font size dropdown

* Fix `UpdateFontSizeDelta` action typo

* Fix `fontScale`in `Call.ts`

* Rename `baseFontSizeV3` to `fontSizeDelta`

* Update playwright test

* Add `default` next to the browser font size

* Remove remaining `TODO`

* Remove falsy `private`

* Improve doc

* Update snapshots after develop merge

* Remove commented import
2024-02-21 11:23:07 +00:00
Michael Telatynski
36a8d503df
Add Playwright tests for OIDC-aware & OIDC-native (#12252)
* Resolve race condition between opening settings & well-known check in OIDC mode

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

* Add OIDC-aware and OIDC-native tests using MAS

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-02-21 10:43:47 +00:00
ElementRobot
6e73d6579e
[create-pull-request] automated change (#12268)
Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>
2024-02-21 06:21:16 +00:00
Florian Duros
96a33b800a
Revert "Use Compound primary colors for most actions" (#12264)
* Revert ed5ef023b2

* Update failing snapshots

* Update snapshots after develop merge
2024-02-20 16:24:40 +00:00
Florian Duros
dd5b7417be
Remove hardcoded Element in tac labs description (#12266) 2024-02-20 14:19:53 +00:00
Richard van der Hoff
371405782d
Fix branding in "migrating crypto" message (#12265)
Fixes https://github.com/element-hq/element-web/issues/27021
2024-02-20 12:14:22 +00:00
Michael Telatynski
618462ba06
Fix Native OIDC for Element Desktop (#12253)
* Reuse exported common type

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

* Improve client metadata used for OIDC dynamic registration

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

* Fix Native OIDC for Element Desktop by including ssoid in the url_state of the /auth call

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

* Reuse exported common type

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

* Improve client metadata used for OIDC dynamic registration

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

* Fix typo

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

* Fix test

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

* Mock PlatformPeg

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

* Mock platform

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

* Add comment

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

* Improve comment

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

* Update src/BasePlatform.ts

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2024-02-19 15:10:11 +00:00
Michael Telatynski
cd8679c172
Improve client metadata used for OIDC dynamic registration (#12257) 2024-02-16 14:43:58 +00:00
David Baker
e8ce9cb360
Use h1 as first heading in dialogs (#12250)
* Use h1 as first heading in dialogs

The dialog should be modal and therefore the only content active
on the screen, so the title of the dialog should be the top level.

Update snapshots & tests appropriately.

* Just customise the letter spacing on dialog titles
2024-02-16 14:23:33 +00:00
Valere
db096b7986
Add A-Element-R labels to rageshakes if rust (#12251)
* Add A-Element-R labels to rageshakes if rust

* fix import

* Add tests for rageshake  collect

* add ts-ignore in test

* refactor rageshake to match sonar Cognitive Complexity
2024-02-15 19:45:46 +00:00
Michael Telatynski
aa5024adae
Fix Native OIDC for Element Desktop by including ssoid in the url_state of the /auth call
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-02-15 17:36:27 +00:00
Michael Telatynski
c19737b387
Improve client metadata used for OIDC dynamic registration
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-02-15 17:03:19 +00:00
Vri
2c0ee1e114
Fix forced lowercase username in login/registration flows (#9329)
* remove lowercase (proposal)

Lowercase doesn't make sense here (at least in German). I suggest removing it or creating a new translatable string.

* remove lowercase

Lowercase doesn't make sense here (at least in German). I suggest removing it or creating a new translatable string.

* Update screenshot

---------

Co-authored-by: David Baker <dbkr@users.noreply.github.com>
2024-02-15 12:19:15 +00:00
Andy Balaam
35ad92bf54
Call the AsJson forms of import and exportRoomKeys (#12233) 2024-02-14 10:33:39 +00:00
ElementRobot
44e18b188c
[create-pull-request] automated change (#12248)
Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>
2024-02-14 06:21:23 +00:00
Robin
ed5ef023b2
Use Compound primary colors for most actions (#12241)
* Use Compound primary colors for most actions

The "accent" color variable is something we should generally not use anymore: it maps to a Compound text token, which makes its semantics inappropriate for icons and backgrounds, and it clashes with the primary colors present on the Compound components we're now bringing into the app. As discussed with design, we would like to phase out its usage on interactive components in favor of the correct icon and background colors from Compound. This is a best-effort attempt at applying new colors to all the major places that we were previously using "accent": mainly, buttons and form controls are affected.

* Update some more colors

* Update test snapshots

* Fix broken screenshot
2024-02-13 20:10:07 +00:00
Robin
8bbad9f653
Enable custom themes to theme Compound (#12240)
* Enable custom themes to theme Compound

* Remove the now redundant username color variables

They are replaced by the Compound theming options (specifically, username colors can be themed by changing the color of Compound's decorative color tokens).
2024-02-13 14:07:58 +00:00
David Baker
203c15f205
Update the TAC indicator on event decryption (#12243)
* Update the TAC indicator on event decryption

But throttled so we don't kill the client

Fixes https://github.com/element-hq/element-web/issues/26990

* Just pass the function
2024-02-13 10:58:17 +00:00
Michael Telatynski
36c07be889
Fix OIDC delegated auth account url check (#12242)
* Fix OIDC delegated auth account url check

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

* Iterate

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

* Update tests

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-02-13 09:11:50 +00:00
Michael Telatynski
9b5401dcec
Remove welcome bot welcome_user_id support (#12153)
* Remove welcome bot `welcome_user_id` support

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

* Iterate

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

* i18n

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

* Remove unused prop

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

---------

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2024-02-12 15:04:13 +00:00
Travis Ralston
86b3564b54
Enable redirected media by default (#12142)
* Enable redirected media by default

See https://github.com/matrix-org/matrix-js-sdk/pull/4007

* Update the tests

* Update tests

* Update end-to-end tests too

* Update linkifier to use Media customisation endpoint

* Fix tests for new js-sdk behaviour

* Fix unchanged file

* Fix linkifier

* Fix lint
2024-02-11 07:32:57 +00:00
Andy Balaam
d1928079cc
Use the non-deprecated importRoomKeys method on CryptoApi (#12232)
* Use the non-deprecated importRoomKeys method on CryptoApi

* Assert that we have crypto in import dialog
2024-02-09 13:13:26 +00:00
Timo
552c65db98
New Header edgecase fixes: Close lobby button not shown, disable join button in various places, more... (#12235)
* Add missing tooltip

Signed-off-by: Timo K <toger5@hotmail.de>

* fix incoming call toast (icon + disabled button if there is an ongoing call)

Signed-off-by: Timo K <toger5@hotmail.de>

* room header
 - fix join button not getting disabled if there is an ongoing call
 - fix close lobby button not shown (instead we see the join button)

Signed-off-by: Timo K <toger5@hotmail.de>

* additional tests

Signed-off-by: Timo K <toger5@hotmail.de>

* fix tests

Signed-off-by: Timo K <toger5@hotmail.de>

* update snapshot

Signed-off-by: Timo K <toger5@hotmail.de>

* fix not open menu if disabled

Signed-off-by: Timo K <toger5@hotmail.de>

* add tooltip provider

Signed-off-by: Timo K <toger5@hotmail.de>

* update snap class

Signed-off-by: Timo K <toger5@hotmail.de>

* room header snap update

Signed-off-by: Timo K <toger5@hotmail.de>

* fix snapshot

Signed-off-by: Timo K <toger5@hotmail.de>

---------

Signed-off-by: Timo K <toger5@hotmail.de>
2024-02-08 16:48:50 +00:00
Florian Duros
a4987060b7
Pop out of Threads Activity Centre (#12136)
* Add `Thread Activity centre` labs flag

* Rename translation string

* WIP Thread Activity Centre

* Update supportedLevels

* css lint

* i18n lint

* Fix labs subsection test

* Update Threads Activity Centre label

* Rename Thread Activity Centre to Threads Activity Centre

* Use compound `MenuItem` instead of custom button

* Color thread icon when hovered

* Make the pop-up scrollable and add a max height

* Remove Math.random in key

* Remove unused class

* Change add comments on `mx_ThreadsActivityRows` and `mx_ThreadsActivityRow`

* Make threads activity centre labs flag split out unread counts

Just shows notif & unread counts for main thread if the TAC is enabled.

* Fix tests

* Simpler fix

* Open thread panel when thread clicke in Threads Activity Centre

Hopefully this is a sensible enough way. The panel will stay open of
course (ie. if you go to a different room & come back), but that's the
nature of the right panel.

* Dynamic state of room

* Add doc

* Use the StatelessNotificationBadge component in ThreadsActivityCentre

and re-use the existing NotificationLevel

* Remove unused style

* Add room sorting

* Fix `ThreadsActivityRow` props doc

* Pass in & cache the status of the TAC labs flag

* Pass includeThreads as setting to doesRoomHaveUnreadMessages too

* Fix tests

* Add analytics to the TAC (#12179)

* Update TAC label (#12186)

* Add `IndicatorIcon` to the TAC button (#12182)

Add `IndicatorIcon` to the TAC button

* Threads don't have activity if the room is muted

This makes it match the computation in determineUnreadState.
Ideally this logic should all be in one place.

* Re-use doesRoomHaveUnreadThreads for useRoomThreadNotifications

This incorporates the logic of not showing unread dots if the room
is muted

* Add TAC description in labs (#12197)

* Fox position & size of dot on the tac button

IndicatorIcon doesn't like having the size of its icon adjusted and
we probably shouldn't do it anyway: better to specify to the component
what size we want it.

* TAC: Utils tests (#12200)

* Add tests for `doesRoomHaveUnreadThreads`
* Add tests for `getThreadNotificationLevel`

* Add test for the ThreadsActivityCentre component

* Add snapshot test

* Fix narrow hover background on TAC button

Make the button 32x32 (and the inner icon 24x24)

* Add caption for empty TAC

* s/tac/threads_activity_centre/

* Fix i18n & add tests

* Add playwright tests for the TAC (#12227)

* Fox comments

---------

Co-authored-by: David Baker <dbkr@users.noreply.github.com>
2024-02-07 13:49:40 +00:00
Robin
3052025dd0
Use new semantic tokens for username colors (#12209)
* Use new semantic tokens for username colors

To match the tokens now used by the Compound Web avatar component

* Fix incorrect lock icon

* Update screenshots
2024-02-06 20:54:30 +00:00
Andy Balaam
a664172a22
Use the non-deprecated exportRoomKeys method on CryptoApi (#12231)
* Expand the export test to check encryptMegolmKeyFile was called

* Use the non-deprecated exportRoomKeys method on CryptoApi
2024-02-06 14:46:15 +00:00
Valere
cdfcd37b94
Fix the StorageManger detecting a false positive consistency check when manually migrating to rust from labs (#12225)
* Fix StorageManager checks for rust migration manual opt-in

* fix restricted imports

* Moved utility to check db internals into js-sdk

* fix typos and test names

* more timeout for migration test
2024-02-05 17:57:12 +00:00
Valere
cb7fd5118e
SettingsStore: Change feature_rust_crypto to default true (#12203)
* Set default crypto stack to rust

* Update test for default to rust crypto

* Fix labs settings tests

* Fix test not working with rust crypto
2024-02-02 12:20:13 +00:00
Valere
f36b6035f4
Fix logout can take ages (#12191)
* Fix logout can take ages

* fix for of loop

* Add logout tests

* Unit test for logout behavior

* UserMenu tests update snapshot
2024-02-02 11:43:59 +00:00
Timo
53b3d6fe98
Fix sending call notify (#12211)
Signed-off-by: Timo K <toger5@hotmail.de>
2024-02-02 11:35:50 +00:00
Florian Duros
8299abd344
Fix Mark all as read in settings (#12205)
* Fix `Mark all as read` in settings

* Update tests
2024-02-01 17:58:57 +00:00
Valere
40ee1bb400
Support rust in StorageManager (#12206) 2024-02-01 15:42:14 +00:00
Timo
01f0c668b7
Hotfix fix: waitForEvent does resolve immediatly. (#12201)
* New room header
 - add chat button during call
 - close lobby button in lobby
 - join button if session exists
 - allow to toggle call <-> timeline during call with call button

Compound style for join button in call notify toast.

Signed-off-by: Timo K <toger5@hotmail.de>

* dont show start call, join button in video rooms.

Signed-off-by: Timo K <toger5@hotmail.de>

* Make active call check based on participant count
Not based on available call object

Signed-off-by: Timo K <toger5@hotmail.de>

* fix room header tests

Signed-off-by: Timo K <toger5@hotmail.de>

* fix room header tests

Signed-off-by: Timo K <toger5@hotmail.de>

* remove chat button test for displaying.
Chat button display logic is now part of the RoomHeader.

Signed-off-by: Timo K <toger5@hotmail.de>

* remove duplicate notification Tread icon

Signed-off-by: Timo K <toger5@hotmail.de>

* remove obsolete jest snapshot

Signed-off-by: Timo K <toger5@hotmail.de>

* Update src/components/views/rooms/RoomHeader.tsx

Co-authored-by: Robin <robin@robin.town>

* update isECWidget logic

Signed-off-by: Timo K <toger5@hotmail.de>

* remove dead code

Signed-off-by: Timo K <toger5@hotmail.de>

* refactor call options
Add menu to choose if there are multiple options

Signed-off-by: Timo K <toger5@hotmail.de>

* join ec when clicking join button (dont start jitsi)
Use icon buttons
don't show call icon when join button is visible

Signed-off-by: Timo K <toger5@hotmail.de>

* refactor isViewingCall

Signed-off-by: Timo K <toger5@hotmail.de>

* fix room header tests

Signed-off-by: Timo K <toger5@hotmail.de>

* fix header snapshot

Signed-off-by: Timo K <toger5@hotmail.de>

* sonar proposals

Signed-off-by: Timo K <toger5@hotmail.de>

* fix event shiftKey may be undefined

Signed-off-by: Timo K <toger5@hotmail.de>

* more lobby time before timeout
only await sticky promise on becoming sticky.

Signed-off-by: Timo K <toger5@hotmail.de>

* don't allow starting new calls if there is an ongoing other call.

Signed-off-by: Timo K <toger5@hotmail.de>

* review

Signed-off-by: Timo K <toger5@hotmail.de>

* fix translation typo

Signed-off-by: Timo K <toger5@hotmail.de>

* missing await in case customTimeout=false

Signed-off-by: Timo K <toger5@hotmail.de>

---------

Signed-off-by: Timo K <toger5@hotmail.de>
Co-authored-by: Robin <robin@robin.town>
2024-02-01 12:39:33 +00:00
Florian Duros
a3a387a1dd
Fix default thread notification of the new RoomHeader (#12194) 2024-01-31 16:24:56 +00:00
Valere
a5f9df5855
Support staged rollout of migration to Rust Crypto (#12184)
* Rust migration staged rollout

* Phased rollout unit tests
2024-01-31 15:52:23 +00:00
Timo
73b16239a5
Add Element call related functionality to new room header (#12091)
* New room header
 - add chat button during call
 - close lobby button in lobby
 - join button if session exists
 - allow to toggle call <-> timeline during call with call button

Compound style for join button in call notify toast.

Signed-off-by: Timo K <toger5@hotmail.de>

* dont show start call, join button in video rooms.

Signed-off-by: Timo K <toger5@hotmail.de>

* Make active call check based on participant count
Not based on available call object

Signed-off-by: Timo K <toger5@hotmail.de>

* fix room header tests

Signed-off-by: Timo K <toger5@hotmail.de>

* fix room header tests

Signed-off-by: Timo K <toger5@hotmail.de>

* remove chat button test for displaying.
Chat button display logic is now part of the RoomHeader.

Signed-off-by: Timo K <toger5@hotmail.de>

* remove duplicate notification Tread icon

Signed-off-by: Timo K <toger5@hotmail.de>

* remove obsolete jest snapshot

Signed-off-by: Timo K <toger5@hotmail.de>

* Update src/components/views/rooms/RoomHeader.tsx

Co-authored-by: Robin <robin@robin.town>

* update isECWidget logic

Signed-off-by: Timo K <toger5@hotmail.de>

* remove dead code

Signed-off-by: Timo K <toger5@hotmail.de>

* refactor call options
Add menu to choose if there are multiple options

Signed-off-by: Timo K <toger5@hotmail.de>

* join ec when clicking join button (dont start jitsi)
Use icon buttons
don't show call icon when join button is visible

Signed-off-by: Timo K <toger5@hotmail.de>

* refactor isViewingCall

Signed-off-by: Timo K <toger5@hotmail.de>

* fix room header tests

Signed-off-by: Timo K <toger5@hotmail.de>

* fix header snapshot

Signed-off-by: Timo K <toger5@hotmail.de>

* sonar proposals

Signed-off-by: Timo K <toger5@hotmail.de>

* fix event shiftKey may be undefined

Signed-off-by: Timo K <toger5@hotmail.de>

* more lobby time before timeout
only await sticky promise on becoming sticky.

Signed-off-by: Timo K <toger5@hotmail.de>

* don't allow starting new calls if there is an ongoing other call.

Signed-off-by: Timo K <toger5@hotmail.de>

* review

Signed-off-by: Timo K <toger5@hotmail.de>

* fix translation typo

Signed-off-by: Timo K <toger5@hotmail.de>

---------

Signed-off-by: Timo K <toger5@hotmail.de>
Co-authored-by: Robin <robin@robin.town>
2024-01-31 15:18:52 +00:00
ElementRobot
7c84953afe
[create-pull-request] automated change (#12193)
Co-authored-by: github-merge-queue <github-merge-queue@users.noreply.github.com>
2024-01-31 06:24:02 +00:00