Commit Graph

1676 Commits (be2a696e6d030b9acdf1ed4f229d2ac9e5fc9be1)

Author SHA1 Message Date
Robin 62a740d318
Fix call splitbrains when switching between rooms (#9692)
* Fix call splitbrains when switching between rooms

Mounting CallView causes the user's call membership room state to be cleaned up. However, because the GroupCall object always thought the local device was disconnected from the call, it would remove the local device from room state when the clean method is called, causing a splitbrain. This uses GroupCall's new enteredViaAnotherSession field to fix that, and also simplify participant tracking.

* Remove clean tests that have been moved to matrix-js-sdk
2022-12-02 09:35:31 +01:00
Kerry 81098b9914
Add config setting to disable bulk unverified sessions nag (#9657)
* test bulk unverified sessions toast behaviour

* unverified sessions toast text tweak

* only show bulk unverified sessions toast when current device is verified

* add Setting for BulkUnverifiedSessionsReminder

* add build config for BulkUnverifiedSessionsReminder

* add more assertions for show/hide toast, fix strict errors

* fix strict error
2022-12-02 03:24:45 +00:00
Kerry 5742c24114
Only display bulk unverified sessions nag when current session is verified (PSG-893) (#9656)
* test bulk unverified sessions toast behaviour

* unverified sessions toast text tweak

* only show bulk unverified sessions toast when current device is verified

* add more assertions for show/hide toast, fix strict errors

* fix strict error

* really fix strict error
2022-12-02 02:59:46 +00:00
kegsay 1f703b8898
bugfix: fix an issue where the Notifier would incorrectly fire for non-timeline events (#9664)
* bugfix: fix an issue where the Notifier would incorrectly fire for non-timeline events

This was caused by listening for ClientEvent.Event, not RoomEvent.Timeline.
Fixes https://github.com/vector-im/element-web/issues/17263

* tsc strict checks maybe

* More types?

* Update src/Notifier.ts

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

* Update src/Notifier.ts

* fix LL test; review comments

* More tests

* More tsc strict checks..

* More strict ts..

* More ts

Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2022-12-01 12:21:56 +00:00
Michael Telatynski ccfb455847
Fix power selector being wrongly disabled for admins themselves (#9681) 2022-12-01 09:49:46 +00:00
Kerry 1d4cbee81c
test bulk unverified sessions toast behaviour (#9655)
* test bulk unverified sessions toast behaviour

* add more assertions for show/hide toast, fix strict errors
2022-12-01 08:47:20 +01:00
Eric Eastwood ca58617cee
Add more debugging for why audio ring/ringback might not be playing (#9642)
* Add more debugging for why audio might not be playing

More debugging for https://github.com/vector-im/element-web/issues/20832

* Listen to events from <audio>

* Make it easier to spot event type

* Move to start/stop functions

* Fix some lints

* Protect from potentially undefined element

* Needs more mocked functions

* More code coverage

* Test formatting

* Add return types

See https://github.com/matrix-org/matrix-react-sdk/pull/9642#discussion_r1036274817

* Add comment on when magic comment is applicable

See https://github.com/matrix-org/matrix-react-sdk/pull/9642#discussion_r1036258757
2022-12-01 04:08:09 +00:00
Robin d2109de4ca
Remove unused Element Call capabilities (#9653)
As of 44e22e268420bd4b24a110840e2edaca46653407 in the Element Call repo, Element Call widgets no longer request the capability to start calls.
2022-11-30 13:54:18 +00:00
Michael Telatynski d258402186
Typescript updates (#9658)
* Typescript updates

* Update @types/node

* Fix more types
2022-11-30 11:32:56 +00:00
Michael Weimann d0fd0cfea0
Update Voice Broadcast buffering style (#9643) 2022-11-30 11:43:58 +01:00
Michael Weimann 459df4583e
Fix start voice broadcast recording while listening (#9630) 2022-11-30 11:16:22 +01:00
Michael Weimann 70a7961681
Update voice broadcast time display (#9646) 2022-11-30 08:47:29 +01:00
Robin 69e03860a0
Show day counts in call durations (#9641)
* Show day counts in call durations

Previously call durations over a day long would be truncated, for example displaying as '2h 0m 0s' instead of '1d 2h 0m 0s'.

* Fix strict mode errors

* Fix strings

Co-authored-by: Travis Ralston <travisr@matrix.org>
2022-11-29 14:21:51 -07:00
Michael Telatynski d341c56b1f
Fix issues around up arrow event edit shortcut (#9645) 2022-11-29 14:55:48 +00:00
Richard van der Hoff f642765149
Pass a client into `RoomNotifs.getRoomNotifsState` (#9631)
Pass an explicit client into `RoomNotifs.getRoomNotifsState`, rather than
relying on `MatrixClientPeg`. This resolves a race condition where we have a
component which thinks it is using a particular component, but
`MatrixClientPeg` has been updated.
2022-11-29 10:55:15 +00:00
Michael Telatynski 8bd60d09dc
Fix search not being cleared when clicking on a result (#9635)
* Fix test naming

* Fix search not being cleared when clicking on a result

* Update RoomView.tsx

* Update RoomView.tsx
2022-11-29 10:36:59 +00:00
Robin 2c612d5aa1
Use native js-sdk group call support (#9625)
* Use native js-sdk group call support

Now that the js-sdk supports group calls natively, our group call implementation can be simplified a bit. Switching to the js-sdk implementation also brings the react-sdk up to date with recent MSC3401 changes, and adds support for joining calls from multiple devices. (So, the previous logic which sent to-device messages to prevent multi-device sessions is no longer necessary.)

* Fix strings

* Fix strict type errors
2022-11-28 16:37:32 -05:00
Michael Weimann 3c7781a561
Stop voice broadcast on delete (#9629) 2022-11-28 18:45:50 +01:00
Florian Duros 033c26ab53
Fix edit a reply in rich text editor (#9615)
Fix edit a reply in rich text editor
2022-11-28 16:01:49 +01:00
Michael Weimann b302275289
Add input device selection during voice broadcast (#9620) 2022-11-28 14:16:44 +00:00
Michael Weimann 5b5c3ab33c
Tweak voice broadcast play icon (#9622) 2022-11-28 12:03:18 +00:00
Michael Weimann e38c59c535
Pause voice broadcast on calls (#9623) 2022-11-28 11:43:59 +00:00
Janne Mareike Koschinski 55d9dbf00d
Fix thread list jumping back down while scrolling (#9606)
* Fix timeline jumping after every thread update

* Add tests to prevent this from occuring again
2022-11-25 13:22:06 +01:00
Michael Weimann 55921e4888
Fix voice broadcast recording (#9617) 2022-11-25 08:47:46 +01:00
Florian Duros d71a72e27c
Add slow jest reporter (#9599)
Add slow jest reporter
2022-11-24 14:53:32 +01:00
Florian Duros 7c63d52500
Add placeholder for rich text editor (#9613)
* Add placeholder for rich text editor
2022-11-24 10:31:56 +00:00
Michael Telatynski 8b8d24c24c
Fix regression with TimelinePanel props updates not taking effect (#9608)
* Fix regression with TimelinePanel props updates not taking effect

* Add test
2022-11-24 09:51:21 +00:00
Michael Weimann a8e15ebe60
Add voice broadcast playback pip (#9603) 2022-11-24 09:08:41 +01:00
Michael Weimann 569a364933
Add filter console test util (#9607) 2022-11-23 09:01:42 +01:00
Germain 40cbee60db
Consolidate public room search experience (#9605) 2022-11-22 15:05:09 +00:00
Germain 7b5e73207f
Fix SpaceTreeLevel enzyme test (#9602) 2022-11-22 09:53:33 +00:00
Michael Weimann e5ce6d7800
New password reset flow (#9581) 2022-11-22 07:58:37 +01:00
Michael Weimann 3f74ac37e8
Refactor PipView + fix strict errors (#9604) 2022-11-22 07:57:38 +01:00
Eric Eastwood 2393510a7f
Fix `getRelationsForEvent` under TypeScript `strict` mode (#9558)
* Fix getRelationsForEvent tsc strictness

* Use shared type for GetRelationsForEvent

* Fix lint

* Add alternative type

* getRelationsForEvent is not required

* Relations are optional

* Reactions are optional

* We expect relations in these tests

* Add more protection if the eventID is not defined

* Allow null too

* Better test typing

* User ID is not necessary unless something is selected

* It's okay to [].includes(null)

* Null is as good as undefined here

* Null or undefined is good here

* We have some expectations for the tests

* The room and user can be undefined too

* Protec

* Reactions are optional

* Try match signatures

* Null or undefined

* More null or undefined

* Protec

* Fix typo (wrong variable)

* Remove optional params

See https://github.com/matrix-org/matrix-react-sdk/pull/9558#discussion_r1017515913

* Fix up last maaaaybe relevant lint

Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2022-11-21 20:54:24 -07:00
Michael Telatynski 8c0d202df4
Enable tsc alwaysStrict, strictBindCallApply, noImplicitThis (#9600)
* Enable tsc alwaysStrict

* Enable tsc strictBindCallApply

* Enable tsc noImplicitThis

* Add d.ts

* Improve types

* Add ?

* Increase coverage

* Improve coverage
2022-11-21 11:24:59 +00:00
Michael Weimann d699f5607b
Add voice broadcast seek 30s forward/backward buttons (#9592) 2022-11-21 08:47:09 +01:00
Kerry caac059479
Device manager - add tooltip to device details toggle (#9594)
* add hide/show tooltip to dm details toggle

* use named export, update tests
2022-11-21 08:24:56 +13:00
kegsay acdcda78f0
sliding sync: add lazy-loading member support (#9530)
* sliding sync: add lazy-loading member support

Also swap to `$ME` constants when referring to our own member event.

* Hook into existing LL logic when showing the MemberList

* Linting

* Use consts in js sdk not react sdk

* Add jest tests

* linting

* Store the room in the test

* Fix up getRoom impl

* Add MemberListStore

* Use the right context in MemberList tests

* Fix RightPanel-test

* Always return members even if we lazy load

* Add MemberListStore tests

* Additional tests
2022-11-18 19:05:00 +00:00
Michael Telatynski d626f71fdd
Extract Search handling from RoomView into its own Component (#9574)
* Extract Search handling from RoomView into its own Component

* Iterate

* Fix types

* Add tests

* Increase coverage

* Simplify test

* Improve coverage
2022-11-18 16:40:22 +00:00
Michael Telatynski 590b845f3f
Remove all usages of UNSAFE_* React methods (#9583) 2022-11-18 09:22:43 +00:00
Germain 38dbe8ed33
Migrate some tests to React Testing Library (#9584) 2022-11-18 09:16:11 +00:00
Michael Weimann ef548a4843
Add live voice broadcast indicator to user menu (#9590) 2022-11-18 08:36:20 +01:00
Florian Duros d5e076bc3d
Use react-testing-library instead of enzyme for useDebouncedCallback 2022-11-17 12:01:31 +01:00
Florian Duros 3243d215e6
Remove useWysiwyg mock (#9578) 2022-11-16 15:38:00 +00:00
Michael Weimann cf3c899dd1
Tweak voice broadcast live icon (#9576) 2022-11-16 16:13:59 +01:00
Germain 663c7e069e
Migrate useTopic test to RTL (#9580) 2022-11-15 14:00:02 +01:00
Germain c10339ad68
Make clear notifications work with threads (#9575) 2022-11-15 10:27:13 +00:00
Michael Telatynski e66027cd0c
Deduplicate string compare utility (#9579) 2022-11-15 10:20:36 +00:00
Michael Weimann 436146105e
Implement voice broadcast device selection (#9572) 2022-11-15 10:02:40 +01:00
Florian Duros 45d53d3404
Update @matrix-org/matrix-wysiwyg dependency 2022-11-14 14:12:09 +01:00