Commit graph

954 commits

Author SHA1 Message Date
Kerry
b1c32995c6
Device manager - prune client information events after remote sign out ()
* prune client infromation events from old devices

* test client data pruning

* remove debug

* strict

* Update src/components/views/settings/devices/useOwnDevices.ts

Co-authored-by: Michael Weimann <michaelw@matrix.org>

* improvements from review

Co-authored-by: Michael Weimann <michaelw@matrix.org>
2023-01-10 07:01:50 +01:00
Germain
7ca1b385d9 Force enable threads labs flag 2023-01-09 12:38:19 +00:00
Johannes Marbach
214fa13d7d Update snapshots 2023-01-06 17:44:36 +01:00
Michael Weimann
ab9152044c
Use the same avatar colour when creating 1:1 DM rooms () 2023-01-05 17:05:21 +01:00
grimhilt
ecfd1736e5
combine search results when the query is present in multiple successive messages ()
* merge successives messages

* add tests

* fix styles

* update test to match the expected parameters

* fix types errors

* fix tsc types errors

Co-authored-by: grimhilt <grimhilt@users.noreply.github.com>
Co-authored-by: David Baker <dbkr@users.noreply.github.com>
2023-01-05 11:37:58 +00:00
Michael Weimann
488a08a25e
Allow reactions for broadcasts () 2023-01-05 08:40:09 +01:00
alunturner
432ce3ca31
Improve switching between rich and plain editing modes ()
* allows switching between modes that retains formatting
* updates rich text composer dependency to 0.13.0 (@matrix-org/matrix-wysiwyg)
* improves handling of enter keypresses when ctrlEnterTosend setting is true in plain text editor
* changes the message event content when using the new editor
* adds tests for the changes to the plain text editor
2023-01-04 12:57:09 +00:00
alunturner
3bcea5fb0b
Convert enzyme to rtl: BeaconMarker () 2023-01-04 10:00:13 +00:00
Robin
cb1af0d3de
Redesign the picture-in-picture window ()
* Remove unnecessary PipContainer component

* Redesign the picture-in-picture window

* Add a hover effect to the controls

* Clarify that WidgetPip has call-specific behavior
2023-01-04 04:44:38 +00:00
Florian Duros
6b155620e4
Fix emoji in RTE editing ()
Fix emoji in RTE editing
2023-01-03 15:35:14 +00:00
Marco Bartelt
1b06b72b67
static-user-onboarding-steps () 2023-01-02 14:34:34 +00:00
Michael Weimann
0f7a2ce6df
Confirm listen to a broadcast while recording () 2023-01-02 12:21:33 +00:00
Michael Weimann
3ce064731b
Migrate AppTile-Test to RTL () 2022-12-30 10:33:10 +00:00
alunturner
b034ada6fd
Convert enzyme to rtl: BasicMessageComposer () 2022-12-29 20:52:51 +00:00
Germain
adab82edae
Migrate TextualBody to RTL () 2022-12-29 16:21:00 +00:00
Germain
1e8b59ea40
Migrate Enzyme to RTL () 2022-12-29 15:35:19 +00:00
alunturner
6d2d13fdee
Enzyme to rtl: QuickThemeSwitcher () 2022-12-29 12:44:18 +00:00
alunturner
49fefb0c32
Convert enzyme to rtl: RightPanel () 2022-12-29 08:40:42 +00:00
Kerry
c0ba1b8a1c
Device manager - contextual menus ()
* add session count to current session contextual signout

* add contextual menu to other sessions section

* typo

* i18n

* strict
2022-12-29 02:08:57 +00:00
alunturner
2e097a00c7
Convert enzyme to rtl: BeaconStatus ()
* rewrite in rtl
* update snapshots
2022-12-28 16:24:46 +00:00
Michael Weimann
c257e137aa
Allow call and broadcast PiP at the same time () 2022-12-28 13:43:44 +00:00
Germain
d2763c329d
Migrate AccessibleButton-test to RTL () 2022-12-28 10:40:34 +00:00
Michael Weimann
5912c7a637
Replace broadcast instance with SDKContext () 2022-12-27 08:39:26 +01:00
Michael Weimann
32140855fb
When deleting a voice broadcast, also delete related events () 2022-12-23 15:44:01 +00:00
Florian Duros
fe0273b1a6
Add link creation to rich text editor ()
Add link creation to RTE
2022-12-23 11:34:15 +00:00
Florian Duros
88c3864682
Replace some enzyme tests by @testing-library/react ()
* Replace MessageComposerButtons-test.tsx enzyme by @testing-library/react

* Replace HtmlUtils-test.tsx enzyme by @testing-library/react
2022-12-23 10:46:14 +00:00
Michael Weimann
b07bd4d102
Show initial broadcast position in seekbar () 2022-12-22 14:30:42 +00:00
Germain
e9224f6fce
Add mark as read option in room setting () 2022-12-22 13:18:38 +00:00
Michael Weimann
b81582d045
Improve live voice broadcast detection by testing if the started event has been redacted () 2022-12-22 10:37:07 +00:00
Kerry
fbc3228143
Device manager - current device design and copy tweaks ()
* indent device details

* udpate copy for current device security warning

* lint

* test coverage for copy

* strict
2022-12-22 01:58:29 +00:00
Kerry
9a8545bf34
Fix: Editing a poll will silently change it to a closed poll ()
* add failing test case

* dont reset poll disclosure on editing
2022-12-21 21:29:11 +00:00
Germain
dd88fbbc3b
Fix checkForPreJoinUISI for thread roots ()
* Fix blank timeline when thread root is UTD

* add test for pre join uisi checks and thread roots

* ts strict fix

* Update to timeline panel test

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

* Fixes to TimelinePanel-test

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
2022-12-21 16:03:58 +00:00
Michael Weimann
1614674ca9
Snap in PiP widget when content changed () 2022-12-21 13:06:26 +00:00
Florian Duros
7db2ee749f
Fix rte flaky test () 2022-12-21 11:22:17 +00:00
Germain
bef8e077f6
Unify notifications panel event design () 2022-12-21 10:25:50 +00:00
Florian Duros
d6e447b934
Load RTE component only when needed ()
Use react lazy to load rte component
2022-12-20 14:59:18 +00:00
Richard van der Hoff
ad7c002f4d Merge remote-tracking branch 'origin/develop' into rav/edited_events 2022-12-20 11:20:03 +00:00
Richard van der Hoff
dc29317445 Improve display of edited events 2022-12-20 11:19:47 +00:00
Kerry
0485b74acb
Device manager - design tweaks ()
* hover style on dropdown

* hover states

* device details spacing

* device details h3 -> h4

* missing fullstops

* update snapshots for new copy

* device details expand icon bigger

* hide current session security card when details expanded

* filter dropdown padding and hover state

* update cypress selector for device detail heading
2022-12-20 01:17:05 +00:00
renovate[bot]
af3715821b
Update dependency maplibre-gl to v2 ()
* Update dependency maplibre-gl to v2

* update types and mocks for maplibre 2.0

* prettier + strict fix

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Kerry Archibald <kerrya@element.io>
2022-12-18 23:17:15 +00:00
Faye Duxovni
4724506320
Improve decryption error UI by consolidating error messages and providing instructions when possible ()
* Improve decryption error UI by consolidating error messages and providing instructions when possible

* Fix TS strict errors

* Rename .scss to .pcss

* Avoid accessing clipboard, Cypress doesn't like it

* Display DecryptionFailureBar alongside other AuxPanel bars

* Add comments

* Add small margin off-screen for visible decryption failures

* Fix some more TS strict errors

* Add unit tests for DecryptionFailureBar

* Add button to resend key requests manually

* Remove references to matrix-js-sdk crypto internals

* Add hysteresis to visible decryption failures

* Add comment

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

* Add comment

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

* Don't create empty div if we're not showing resend requests button

* cancel updateSessions on unmount

* Update unit tests

* Fix lint and implicit any

* Simplify visible event bounds checking

* Adjust cypress test descriptions

* Add percy snapshots

* Update src/components/structures/TimelinePanel.tsx

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

* Add comments on TimelinePanel IState

* comment

* Add names to percy snapshots

* Show Resend Key Requests button when there are sessions that haven't already been requested via this bar

* We no longer request keys from senders

* update i18n

* update expected text in cypress test

* don't download keys ourselves, update device info in response to updates from client

* fix ts strict errors

* visibledecryptionfailures undefined handling

* Fix implicitAny errors

Co-authored-by: Richard van der Hoff <1389908+richvdh@users.noreply.github.com>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2022-12-15 17:24:33 +00:00
Michael Weimann
ab560bba40
Implement small broadcast PiP () 2022-12-15 11:43:01 +00:00
Germain
2d2755d145
🧵 Enable threads by default ()
* Delabs threads

* remove threads reload when labs is toggled

* Fix ts strict

* fix rebase mistake

* remove .only

* fix pr comments

* re-introduce backwards compat

* Fix export test

* Fix SearchREsultTile test

* strict ts
2022-12-13 15:09:15 +00:00
Michael Weimann
526645c791
Apply prettier formatting 2022-12-12 12:24:14 +01:00
Florian Duros
73986faa7d
Add inline code to rich text editor ()
Add inline code to rich text editor
2022-12-09 14:06:15 +01:00
Florian Duros
65f9843576
Add emoji handling for plain text mode ()
Add emoji handling for plain text mode
2022-12-09 11:38:14 +01:00
Kerry
888e69f39a
Device manage - handle sessions that don't support encryption ()
* add handling for unverifiable sessions

* test

* update types for filtervariation

* strict fixes

* avoid setting up cross signing in device man tests
2022-12-08 21:52:00 +00:00
Kerry
6150b86421
Overlay virtual room call events into main timeline ()
* super WIP POC for merging virtual room events into main timeline

* remove some debugs

* c

* add some todos

* remove hardcoded fake virtual user

* insert overlay events into main timeline without resorting main tl events

* remove more debugs

* add extra tick to roomview tests

* RoomView test case for virtual room

* test case for merged timeline

* make overlay event filter generic

* remove TODOs from LegacyCallEventGrouper

* tidy comments

* remove some newlines

* test timelinepanel room timeline event handling

* use newState.roomId

* fix strict errors in RoomView

* fix strict errors in TimelinePanel

* add type

* pr tweaks

* strict errors

* more strict fix

* strict error whackamole

* update ROomView tests to use rtl
2022-12-08 21:37:25 +00:00
Marco Bartelt
95ac957fa4
add-privileged-users-in-room () 2022-12-08 12:40:31 +01:00
Andy Balaam
0f17728aa1
Merge branch 'develop' into feat/emoji-picker-rich-text-mode 2022-12-08 09:39:30 +00:00
Florian Duros
7943f83858
Change formatting buttons behavior ()
Change formatting buttons behaviour
2022-12-07 12:13:35 +01:00
Florian Duros
bc001c2b88
Fix types 2022-12-06 16:45:25 +01:00
Florian Duros
1bd560d350
Merge remote-tracking branch 'origin/develop' into feat/emoji-picker-rich-text-mode 2022-12-06 16:38:46 +01:00
Florian Duros
27139ca68e
Add test for emoji 2022-12-06 16:38:25 +01:00
Germain
3a501003e2
Add setting to hide bold notifications () 2022-12-06 09:59:17 +00:00
Michael Weimann
474f464e48
Voice broadcast indicator in room list () 2022-12-06 10:56:29 +01:00
Michael Weimann
89439d4f10
Further password reset flow enhancements () 2022-12-06 10:01:25 +01:00
Florian Duros
54e12d265b
Merge remote-tracking branch 'origin/develop' into feat/emoji-picker-rich-text-mode 2022-12-05 17:40:46 +01:00
Florian Duros
f5efa85882
Fix types and console.log 2022-12-05 17:40:33 +01:00
Michael Telatynski
ccfb455847
Fix power selector being wrongly disabled for admins themselves () 2022-12-01 09:49:46 +00:00
Michael Telatynski
d258402186
Typescript updates ()
* Typescript updates

* Update @types/node

* Fix more types
2022-11-30 11:32:56 +00:00
Michael Weimann
459df4583e
Fix start voice broadcast recording while listening () 2022-11-30 11:16:22 +01:00
Michael Telatynski
8bd60d09dc
Fix search not being cleared when clicking on a result ()
* 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 ()
* 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
Florian Duros
033c26ab53
Fix edit a reply in rich text editor ()
Fix edit a reply in rich text editor
2022-11-28 16:01:49 +01:00
Janne Mareike Koschinski
55d9dbf00d
Fix thread list jumping back down while scrolling ()
* Fix timeline jumping after every thread update

* Add tests to prevent this from occuring again
2022-11-25 13:22:06 +01:00
Florian Duros
7c63d52500
Add placeholder for rich text editor ()
* 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 ()
* 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 () 2022-11-24 09:08:41 +01:00
Michael Weimann
569a364933
Add filter console test util () 2022-11-23 09:01:42 +01:00
Germain
40cbee60db
Consolidate public room search experience () 2022-11-22 15:05:09 +00:00
Germain
7b5e73207f
Fix SpaceTreeLevel enzyme test () 2022-11-22 09:53:33 +00:00
Michael Weimann
e5ce6d7800
New password reset flow () 2022-11-22 07:58:37 +01:00
Michael Weimann
3f74ac37e8
Refactor PipView + fix strict errors () 2022-11-22 07:57:38 +01:00
Eric Eastwood
2393510a7f
Fix getRelationsForEvent under TypeScript strict mode ()
* 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 ()
* 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
Kerry
caac059479
Device manager - add tooltip to device details toggle ()
* 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 ()
* 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 ()
* 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 () 2022-11-18 09:22:43 +00:00
Germain
38dbe8ed33
Migrate some tests to React Testing Library () 2022-11-18 09:16:11 +00:00
Michael Weimann
ef548a4843
Add live voice broadcast indicator to user menu () 2022-11-18 08:36:20 +01:00
Florian Duros
3243d215e6
Remove useWysiwyg mock () 2022-11-16 15:38:00 +00:00
Germain
c10339ad68
Make clear notifications work with threads () 2022-11-15 10:27:13 +00:00
Michael Telatynski
e66027cd0c
Deduplicate string compare utility () 2022-11-15 10:20:36 +00:00
Michael Weimann
436146105e
Implement voice broadcast device selection () 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
Hanadi
212233cb0b
Fix: inline links selecting radio button ()
* fix: inline link selecting radio button
2022-11-14 09:11:37 +00:00
Germain
e8d4fbb8ff
Fix missing avatar for show current profiles () 2022-11-11 16:02:01 +00:00
Michael Weimann
fca6ff271c
Extract requestMediaPermissions () 2022-11-11 10:38:51 +01:00
Germain
ee13e23b15
Resilience fix for homeserver without thread notification support ()
* Notification state resilience

* TypeScript strict fixes

* Add tests
2022-11-10 18:01:19 +00:00
Michael Telatynski
962e8e0b23
Differentiate download and decryption errors when showing images () 2022-11-10 09:27:20 +00:00
Michael Weimann
abec724387
Add voice broadcast pre-recoding PiP () 2022-11-10 09:38:48 +01:00
László Várady
afdf289a78
Advanced audio processing settings ()
Co-authored-by: Šimon Brandner <simon.bra.ag@gmail.com>
Fixes https://github.com/vector-im/element-web/issues/6278
Fixes undefined
2022-11-09 20:14:55 +00:00
Michael Telatynski
da779531f1
Close context menu when a modal is opened to prevent user getting stuck () 2022-11-09 15:33:09 +00:00
Germain
3f3005a3ca
Always use current profile on thread events () 2022-11-08 10:58:26 +00:00
Eric Eastwood
3cbd88c280
Fix ThreadView tests not using thread flag ()
Fixes tests failing from changes made by https://github.com/matrix-org/matrix-js-sdk/pull/2856
2022-11-07 14:21:49 -06:00
Florian Duros
5ca9accce2
Improve design of the rich text editor ()
New design for rich text composer
2022-11-04 15:36:50 +00:00
Michael Telatynski
04bc8fb71c
Optimise Jest run in CI () 2022-11-04 10:48:08 +00:00
Hugh Nimmo-Smith
f05cc5d8f3
Refactor + improve test coverage for QR login () 2022-11-02 10:51:20 +00:00