Commit Graph

229 Commits

Author SHA1 Message Date
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
Florian Duros
3243d215e6 Remove useWysiwyg mock (#9578) 2022-11-16 15:38:00 +00:00
Michael Telatynski
e66027cd0c Deduplicate string compare utility (#9579) 2022-11-15 10:20:36 +00:00
Florian Duros
45d53d3404 Update @matrix-org/matrix-wysiwyg dependency 2022-11-14 14:12:09 +01:00
Germain
e8d4fbb8ff Fix missing avatar for show current profiles (#9563) 2022-11-11 16:02:01 +00:00
Michael Weimann
fca6ff271c Extract requestMediaPermissions (#9568) 2022-11-11 10:38:51 +01:00
Florian Duros
5ca9accce2 Improve design of the rich text editor (#9533)
New design for rich text composer
2022-11-04 15:36:50 +00:00
Michael Telatynski
04bc8fb71c Optimise Jest run in CI (#9542) 2022-11-04 10:48:08 +00:00
Germain
9b644844da Fix NotificationBadge unsent color (#9522) 2022-10-31 09:45:02 +00:00
Janne Mareike Koschinski
d92fdc1f5b Loading threads with server-side assistance (#9356)
* Fix bug with message context menu
* fix bug where ThreadSummary failed if no last reply is available
* Fix relations direction API
* Use same API for threads as for any other timeline
* Determine if event belongs to thread on jumping to event
* properly listen to thread deletion
* Add thread redaction tests
* Add fetchInitialEvent tests
* Paginate using default TimelinePanel behaviour
* Remove unused threads deleted code

Co-authored-by: Germain <germain@souquet.com>
Co-authored-by: Germain <germains@element.io>
2022-10-28 13:48:15 +02:00
Florian Duros
92b4c8bf4e Review clean 2022-10-26 19:05:27 +02:00
Florian Duros
fb751c3c7b Add test for plain mode 2022-10-26 17:16:13 +02:00
Florian Duros
f1610dae3d Fix selection 2022-10-26 14:56:41 +02:00
Florian Duros
50279c8870 Add basic plain text editor 2022-10-25 17:26:14 +02:00
Florian Duros
fda4dabf6d Fix MessageComposer test 2022-10-24 15:03:18 +02:00
Florian Duros
de86221c72 Merge remote-tracking branch 'origin/develop' into feat/add-message-edition-wysiwyg-composer 2022-10-24 14:41:27 +02:00
Florian Duros
edecc451dd Fix MessageCompoer-test 2022-10-24 14:41:11 +02:00
Florian Duros
50c29502e4 Add new tests for WysiwygComposer 2022-10-24 12:35:09 +02:00
Michael Telatynski
eafc2d23a7 Ensure spaces in the spotlight dialog have rounded square avatars (#9480) 2022-10-24 08:58:36 +00:00
Germain
9eb4f8d723 Add thread notification with server assistance (MSC3773) (#9400)
Co-authored-by: Janne Mareike Koschinski <janne@kuschku.de>
2022-10-24 07:50:21 +01:00
Florian Duros
4d089dcc05 Merge remote-tracking branch 'origin/develop' into feat/add-message-edition-wysiwyg-composer 2022-10-21 10:15:46 +02:00
Germain
be281fd735 Fix threads fallback incorrectly targets root event (#9229)
* Use RelationType enum instead of hardcoded value

* Fix threads replies fallback to target last reply

* Only unsubscribe from threads events if needed

* fix strict null check

* fix strict null checks

* strict null checks

* fix typing

* Unsubscribe listeners if new thread is `null`

Co-authored-by: Faye Duxovni <fayed@element.io>

* Update strict null checks

* Type HTMLElement as nullable

* Add thread fallback integration test

* lint fix

* Update snapshots

* Add test after changing thread

* Remove test comment

* update snapshot

* fix room context test utility

* Add ThreadListContextMenu test

* lint fix

* fix thread rendering

Co-authored-by: Faye Duxovni <fayed@element.io>
Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2022-10-20 12:48:25 +01:00
Florian Duros
e77f333fb6 Merge remote-tracking branch 'origin/develop' into feat/add-message-edition-wysiwyg-composer 2022-10-19 16:34:22 +02:00
Michael Weimann
bb0c175b7e Display info dialogs if unable to start voice broadcasts (#9453) 2022-10-19 15:01:14 +02:00
Florian Duros
460f60e99d First attempt to make the edition works in the WysiwygComposer 2022-10-19 12:45:51 +02:00
Andy Balaam
e0ab0ac5c9 Allow pressing Enter to send messages in new composer (#9451)
* Allow pressing Enter to send messages in new composer

* Cypress tests for composer send behaviour
2022-10-19 03:07:21 +00:00
Andy Balaam
e38c9e036c Automatically focus the WYSIWYG composer when you enter a room (#9412)
Automatically focus the WYSIWYG composer when you enter a room
2022-10-17 11:48:47 +00:00
Florian Duros
d1a98b632e Add test to attachRelation 2022-10-14 16:42:45 +02:00
Florian Duros
e8d0fb0ab0 Fix linting in test 2022-10-14 16:03:45 +02:00
Florian Duros
4ba3f99489 Add reply support to WysiwygComposer 2022-10-14 15:52:05 +02:00
Florian Duros
c0bf45fddc Rename wysiwyg prop into composer 2022-10-14 10:56:34 +02:00
Florian Duros
53fce572aa Add FormattingButtons test 2022-10-13 18:53:20 +02:00
Florian Duros
ac8397aa0f Fix test 2022-10-13 16:46:47 +02:00
Michael Telatynski
8b54be6f48 Move from browser-request to fetch (#9345) 2022-10-12 18:59:07 +01:00
Florian Duros
7ad39ba6c7 Merge branch 'develop' into feat/matrix-wysisyg-integration 2022-10-10 17:42:59 +02:00
Florian Duros
f8ec4ec1ed Disable wysiwyg at the end of the test 2022-10-10 17:42:15 +02:00
Florian Duros
6c7158197c Add test in MessageComposer 2022-10-10 17:36:18 +02:00
Michael Telatynski
6b30a5e1c9 Migrate some enzyme tests to RTL (#9383) 2022-10-10 16:29:10 +01:00
Florian Duros
ec1140e274 Fix type errors 2022-10-10 17:06:41 +02:00
Florian Duros
5bdac78fc7 Merge remote-tracking branch 'origin/develop' into feat/matrix-wysisyg-integration 2022-10-10 17:04:27 +02:00
Florian Duros
101fd629df Add WysiwygComposer test 2022-10-10 16:50:36 +02:00
Florian Duros
667e8ef10f Add tests to message.ts 2022-10-10 11:16:42 +02:00
Šimon Brandner
26a74a193f Add Element Call room settings (#9347)
Co-authored-by: Robin <robin@robin.town>
2022-10-07 18:10:17 +00:00
Robin
06dbea6255 New group call experience: Room header and PiP designs (#9351)
* Update our cancel icon

The cancel icon we're using in the app has drifted out of sync with the ones used in our designs. We also had two identical-looking icons, so this consolidates them into one.

I've simultaneously updated our chevron icons, since in the case of the 'jump to unread' timeline button, it became clear that the weight of the new close icon did not match the thinner chevron.

* Don't squish bottom/top-aligned tooltips near the edge of the screen

* Close the timeline panel when returning to the fullscreen timeline view

* Add layout switching capabilities to ElementCall

* Bring the room header in line with the group call designs

* Bring the PiP header in line with the group call designs

* Fix lints

* Clarify tooltip CSS calculations

* Test PipView

* Expand RoomHeader test coverage

* Test PipView more
2022-10-07 02:27:28 +00:00
Michael Weimann
7a33818bd7 Extract createVoiceMessageContent (#9322) 2022-09-29 13:06:49 -06:00
Robin
d077ea1990 New group call experience: Room header call buttons (#9311)
* Make useEventEmitterState more efficient

By not invoking the initializing function on every render

* Make useWidgets more efficient

By not calling WidgetStore on every render

* Add new group call experience Labs flag

* Add viewingCall field to RoomViewStore state

Currently has no effect, but in the future this will signal to RoomView to show the call or call lobby.

* Add element_call.use_exclusively config flag

As documented in element-web, this will tell the app to use Element Call exclusively for calls, disabling Jitsi and legacy 1:1 calls.

* Make placeCall return a promise

So that the UI can know when placeCall completes

* Update start call buttons to new group call designs

Since RoomView doesn't do anything with viewingCall yet, these buttons won't have any effect when starting native group calls, but the logic is at least all there and ready to be hooked up.

* Allow calls to be detected if the new group call experience is enabled

* Test the RoomHeader changes

* Iterate code
2022-09-25 10:57:25 -04:00
Michael Weimann
c182c1c706 Generalise VoiceRecording (#9304) 2022-09-21 18:46:28 +02:00