Commit graph

1165 commits

Author SHA1 Message Date
Travis Ralston
0280c27bfd post-merge fixes 2022-04-05 10:57:16 -06:00
Travis Ralston
4057833036 Merge branch 'develop' into travis/remove-skinning 2022-04-05 10:50:37 -06:00
Robin
371ccd7858
Don't use m.call for Jitsi video rooms (#8223) 2022-04-04 10:29:40 -04:00
Robin
1f64835fab
Update video rooms to new design specs (#8207)
* Remove radio component

* "Voice room" → "video room"

* Remove interactivity from video room tiles

* Update connection state when joining via widget

* Simplify room header buttons for video rooms

* Split out video room creation into a separate menu option

* Simplify room options for video rooms

* Update video room tile layout

* Tell the Jitsi widget whether it's a video channel

* Update tests

* "Voice" → "video" in more places

* Fix tests

* Re-add frame to immersive Jitsi widgets

* Comment ack

* Make updateDevices more readable

* Type FacePile
2022-04-01 14:36:10 +00:00
Kerry
b8040a5739
Typescriptification - notification utils (#8209)
* rename ContentRules to ts

Signed-off-by: Kerry Archibald <kerrya@element.io>

* prvstest to ts

Signed-off-by: Kerry Archibald <kerrya@element.io>

* QueryMatcher-test to ts

Signed-off-by: Kerry Archibald <kerrya@element.io>

* UserActivity-test to ts

Signed-off-by: Kerry Archibald <kerrya@element.io>

* fix ts issues

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-04-01 08:45:50 +02:00
Travis Ralston
5137fcf3e8 Remove unit test function which isn't needed
The import ordering no longer requires us to create an injector function.
2022-03-31 19:43:17 -06:00
Travis Ralston
97efdf7094 Merge branch 'develop' into travis/remove-skinning 2022-03-31 19:25:43 -06:00
Kerry
4922e19b5a
Live Location Sharing - left panel warning with error (#8201)
* add error style to left panel beacon warning

Signed-off-by: Kerry Archibald <kerrya@element.io>

* test

Signed-off-by: Kerry Archibald <kerrya@element.io>

* add beacon sort util

* link to latest beacon room from left panel warning

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-03-31 13:51:44 +02:00
Kerry
1175226bcb
Live location sharing - display wire error in room (#8198)
* expose wire errors in more useful way

* add wire error state to room live share warning bar

Signed-off-by: Kerry Archibald <kerrya@element.io>

* stylelint

Signed-off-by: Kerry Archibald <kerrya@element.io>

* add types to getLabel helper

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-03-31 10:57:12 +02:00
Kerry
d09205122d
Live location sharing - Stop publishing location to beacons with consecutive errors (#8194)
* add error state after consecutive errors

Signed-off-by: Kerry Archibald <kerrya@element.io>

* polish

Signed-off-by: Kerry Archibald <kerrya@element.io>

* comment

Signed-off-by: Kerry Archibald <kerrya@element.io>

* remove debug

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-03-30 14:01:44 +00:00
Kerry
e721c6b0c2
Live location sharing: allow retry when stop sharing fails (#8193)
* allow retry when stop sharing fails

Signed-off-by: Kerry Archibald <kerrya@element.io>

* tidy

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-03-30 12:31:19 +00:00
Michael Telatynski
4d14128d94
Fix ts in tests for build (#8189) 2022-03-30 09:12:43 +01:00
Travis Ralston
5fa2ca83ac
Allow voice messages to be scrubbed in the timeline (#8079)
* Use SeekBar for voice messages + move seeking logic to base class

* Appease the linter

* Update tests
2022-03-29 14:07:35 -06:00
Kerry
2adc972eec
Live location sharing - stop sharing to beacons in rooms you left (#8187)
* remove beacons on membership changes

* add addMembershipToMockedRoom test util

Signed-off-by: Kerry Archibald <kerrya@element.io>

* test remove beacons on membership changes

Signed-off-by: Kerry Archibald <kerrya@element.io>

* removelistener

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-03-29 18:18:34 +02:00
Michael Telatynski
e161f0b17b
Update more strings to not wrongly mention room when it is/could be a space (#7722) 2022-03-29 15:02:12 +01:00
Travis Ralston
ea6e6429ee Step 11: Update i18n & code cleanup 2022-03-28 15:04:36 -06:00
Travis Ralston
661b8d595c Step 8.7: Introduce focus-visible import where needed to repair tests
There is an import in `MatrixChat` which no longer gets executed when we don't skin the entire app, so bring it in manually.
2022-03-28 14:02:31 -06:00
Travis Ralston
b2b818a780 Step 8.6: Fix TS issues introduced by using imports 2022-03-28 14:02:31 -06:00
Travis Ralston
4144d0ba57 Step 8.5: Isolate RightPanelStore from RoomViewStore 2022-03-28 14:02:31 -06:00
Travis Ralston
888d470c56 Step 8.5: Move various room utilities out of createRoom 2022-03-28 14:02:31 -06:00
Travis Ralston
1c8ac2c2e5 Step 8.5: Move leave behaviour 2022-03-28 14:02:31 -06:00
Travis Ralston
d5ed1eb66e Step 8.3: Convert RoomViewStore to a more modern singleton for imports 2022-03-28 14:02:31 -06:00
Travis Ralston
8d2dba4102 Step 8.2: Fix wiring of jest test setup to avoid import cycle issues 2022-03-28 14:02:31 -06:00
Travis Ralston
a987ead7d2 Step 8.1: Remove skinning setup from all tests 2022-03-28 14:02:31 -06:00
Travis Ralston
7e21da0c7f Step 4: Disable/remove bulk of skinner code 2022-03-28 14:02:31 -06:00
Travis Ralston
d977865b8e Step 3.1.1: Remove tests that are infeasible to convert 2022-03-28 14:02:31 -06:00
Travis Ralston
26dc2ba45e Step 3.1: Stop using getComponent in tests 2022-03-28 14:02:31 -06:00
Travis Ralston
15b84bd9a6 Step 2: Remove the decorator 2022-03-28 14:02:31 -06:00
Kerry
d2b97e251e
Live location sharing - handle geolocation errors (#8179)
* display live share warning only when geolocation is happening

Signed-off-by: Kerry Archibald <kerrya@element.io>

* kill beacons when geolocation is unavailable or permissions denied

Signed-off-by: Kerry Archibald <kerrya@element.io>

* polish and comments

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-03-28 18:46:39 +02:00
Robin
8baf06c3ff
Show voice room participants when not connected (#8136)
* Add utility for getting connected voice participants

* Allow voice room members to send connected device state

* Update connected devices when connecting/disconnecting voice

* Show voice room participants in room tile when not connected

* Update voice room tests

* Add null types and guards
2022-03-28 14:12:09 +01:00
Kerry
e9b2aea97b
Live location sharing - send geolocation beacon events - happy path (#8127)
* geolocation utilities

Signed-off-by: Kerry Archibald <kerrya@element.io>

* messy send events

Signed-off-by: Kerry Archibald <kerrya@element.io>

* add geolocation services

Signed-off-by: Kerry Archibald <kerrya@element.io>

* geolocation tests

Signed-off-by: Kerry Archibald <kerrya@element.io>

* debounce with backup emit every 30s

Signed-off-by: Kerry Archibald <kerrya@element.io>

* import reorder

Signed-off-by: Kerry Archibald <kerrya@element.io>

* some more working tests

Signed-off-by: Kerry Archibald <kerrya@element.io>

* complicated timeout testing

Signed-off-by: Kerry Archibald <kerrya@element.io>

* publish first location immediately

Signed-off-by: Kerry Archibald <kerrya@element.io>

* move advanceDateAndTime to utils, tidy

Signed-off-by: Kerry Archibald <kerrya@element.io>

* typos

Signed-off-by: Kerry Archibald <kerrya@element.io>

* types and lint

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-03-28 10:48:38 +00:00
Michael Telatynski
a3e5231873
Add support for Animated (A)PNG (#8158) 2022-03-28 09:38:54 +01:00
Robin
1e060fed84
Don't form continuations from thread roots (#8166)
* Don't form continuations from thread roots

* Only apply the continuation break in the main timeline
2022-03-26 18:06:25 -04:00
Travis Ralston
6c69f3e3b6
Fix end-to-end tests for recent Synapse features (#8159)
* Ensure a useful logfile gets recorded for synapse startup failures

* Update synapse config to stop complaining about key servers

* Add flag to turn on registrations again

From https://github.com/matrix-org/synapse/pull/12091
2022-03-25 19:45:52 +00:00
Kerry
61231ee321
Unit test settings controllers pt 1 (#8155)
* test FontSizeController

Signed-off-by: Kerry Archibald <kerrya@element.io>

* test IncompatibleController

Signed-off-by: Kerry Archibald <kerrya@element.io>

* test SystemFontController

* test ThemeController

Signed-off-by: Kerry Archibald <kerrya@element.io>

* test UseSystemFontController

Signed-off-by: Kerry Archibald <kerrya@element.io>

* fix themecontroller

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-03-25 16:50:17 +00:00
Robin
3160442b8b
Floor media dimensions to prevent blurhash errors (#8157) 2022-03-25 16:40:49 +00:00
Michael Telatynski
bc01efa124
Improve handling of animated GIF and WEBP images (#8153) 2022-03-25 16:31:40 +00:00
Travis Ralston
596c207e5b
Remove unused step from e2e test docs for Windows (#8148) 2022-03-25 09:13:20 -06:00
Kerry
1397652f52
Extract location utils from components (#8152)
* extract util functions from MLocationBody

Signed-off-by: Kerry Archibald <kerrya@element.io>

* disassemble mlocationbody

Signed-off-by: Kerry Archibald <kerrya@element.io>

* tidy and add copyrights

Signed-off-by: Kerry Archibald <kerrya@element.io>

* move types and utils from components/location to utils

Signed-off-by: Kerry Archibald <kerrya@element.io>

* i18n

Signed-off-by: Kerry Archibald <kerrya@element.io>

* empty line

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-03-25 15:36:22 +01:00
Kerry
0d513b3a2d
geo.getCurrentPosition and some testing helpers (#8150)
Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-03-25 12:30:50 +01:00
Michael Telatynski
3b523677fd
Don't try (and fail) to show replies for redacted events (#8141) 2022-03-24 12:17:42 +00:00
Robin
3317b60437
Improve typing around wrapInMatrixClientContext (#8130) 2022-03-23 18:13:40 -04:00
Kerry
1495c23a14
Live location sharing: geolocation utilities (#8126)
* geolocation utilities

Signed-off-by: Kerry Archibald <kerrya@element.io>

* remove debug

Signed-off-by: Kerry Archibald <kerrya@element.io>

* comments for ts-ignores

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-03-23 17:08:56 +00:00
Kerry
a8d65ab5c5
Include /test in tsc config, fix rest of issues (#8119)
* fix ts issue in PosthogAnalytics test

Signed-off-by: Kerry Archibald <kerrya@element.io>

* fix remaining ts issues

Signed-off-by: Kerry Archibald <kerrya@element.io>

* tsconfig change

Signed-off-by: Kerry Archibald <kerrya@element.io>

* use sdkconfig patch instead of put

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-03-23 10:27:28 +00:00
Kerry
752ad6a9f9
Live location sharing - refresh beacon expiry in room (#8116)
* add duration dropdown to live location picker

Signed-off-by: Kerry Archibald <kerrya@element.io>

* tidy comments

Signed-off-by: Kerry Archibald <kerrya@element.io>

* setup component

Signed-off-by: Kerry Archibald <kerrya@element.io>

* replace references to beaconInfoId with beacon.identifier

Signed-off-by: Kerry Archibald <kerrya@element.io>

* icon

Signed-off-by: Kerry Archibald <kerrya@element.io>

* component for styled live beacon icon

Signed-off-by: Kerry Archibald <kerrya@element.io>

* emit liveness change whenever livebeaconIds changes

Signed-off-by: Kerry Archibald <kerrya@element.io>

* Handle multiple live beacons in room share warning, test

Signed-off-by: Kerry Archibald <kerrya@element.io>

* un xdescribe beaconstore tests

Signed-off-by: Kerry Archibald <kerrya@element.io>

* missed copyrights

Signed-off-by: Kerry Archibald <kerrya@element.io>

* i18n

Signed-off-by: Kerry Archibald <kerrya@element.io>

* refresh beacon time remaining

Signed-off-by: Kerry Archibald <kerrya@element.io>

* kill timeout

Signed-off-by: Kerry Archibald <kerrya@element.io>

* use useInterval

Signed-off-by: Kerry Archibald <kerrya@element.io>

* beacon not optional in useMsRemaining

Signed-off-by: Kerry Archibald <kerrya@element.io>

* just use single "you are sharing" message

Signed-off-by: Kerry Archibald <kerrya@element.io>

* trigger

Signed-off-by: Kerry Archibald <kerrya@element.io>

* i18n

Signed-off-by: Kerry Archibald <kerrya@element.io>

* i18n again

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-03-23 11:12:58 +01:00
Travis Ralston
fce36ec826
Delete groups (legacy communities system) (#8027)
* Remove deprecated feature_communities_v2_prototypes

* Update _components

* i18n

* delint

* Cut out a bit more dead code

* Carve into legacy components

* Carve into mostly the room list code

* Carve into instances of "groupId"

* Carve out more of what comes up with "groups"

* Carve out some settings

* ignore related groups state

* Remove instances of spacesEnabled

* Fix some obvious issues

* Remove now-unused css

* Fix variable naming for legacy components

* Update i18n

* Misc cleanup from manual review

* Update snapshot for changed flag

* Appease linters

* rethemedex

* Remove now-unused AddressPickerDialog

* Make ConfirmUserActionDialog's member a required prop

* Remove useless override from RightPanelStore

* Remove extraneous CSS

* Update i18n

* Demo: "Communities are now Spaces" landing page

* Restore linkify for group IDs

* Demo: Dialog on click for communities->spaces notice

* i18n for demos

* i18n post-merge

* Update copy

* Appease the linter

* Post-merge cleanup

* Re-add spaces_learn_more_url to the new SdkConfig place

* Round 1 of post-merge fixes

* i18n

Co-authored-by: Michael Telatynski <7t3chguy@gmail.com>
2022-03-22 23:07:37 +00:00
Travis Ralston
03c80707c9 Fix tests for type changes
This is a conflict between https://github.com/matrix-org/matrix-react-sdk/pull/8104 and https://github.com/matrix-org/matrix-react-sdk/pull/8084
2022-03-22 16:45:21 -06:00
Robin
953e3148d1
Make video sizing consistent with images (#8102)
* Make video sizing consistent with images

* Test suggestedSize

* Constrain width of media in large mode
2022-03-22 18:16:03 -04:00
Šimon Brandner
bff1ef31d6
Use styled mxids in member list v2 (#8110)
* Revert "Revert "Use styled mxids in member list (#6328)" (#8107)"

This reverts commit 709e6e78d2.

* Fix disambiguated profile for bubbles

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2022-03-22 16:14:55 -06:00
Robin
cfabcdda35
Voice rooms prototype (#8084)
* Add voice room labs flag

Signed-off-by: Robin Townsend <robin@robin.town>

* Add more widget actions for interacting with Jitsi

Signed-off-by: Robin Townsend <robin@robin.town>

* Factor out a more generic Jitsi creation utility

Signed-off-by: Robin Townsend <robin@robin.town>

* Add utilities for managing voice channels

Signed-off-by: Robin Townsend <robin@robin.town>

* Enable creation of voice rooms

Signed-off-by: Robin Townsend <robin@robin.town>

* Force a maximized view of voice channel widgets

Signed-off-by: Robin Townsend <robin@robin.town>

* Add voice channel store

Signed-off-by: Robin Townsend <robin@robin.town>

* Factor out a more generic FacePile

Signed-off-by: Robin Townsend <robin@robin.town>

* Implement room tile changes for voice rooms

Signed-off-by: Robin Townsend <robin@robin.town>

* Add interactive radio component to the left panel

Signed-off-by: Robin Townsend <robin@robin.town>

* Test voice rooms

Signed-off-by: Robin Townsend <robin@robin.town>

* Update name of call room type

Signed-off-by: Robin Townsend <robin@robin.town>

* Clarify that voice rooms are under development

Signed-off-by: Robin Townsend <robin@robin.town>

* Use readonly

Signed-off-by: Robin Townsend <robin@robin.town>

* Move acks to the end of handlers

Signed-off-by: Robin Townsend <robin@robin.town>

* Add comment about avatar URLs coming from Jitsi

Signed-off-by: Robin Townsend <robin@robin.town>

* Don't use unicode ellipses

for translation reasons?

Signed-off-by: Robin Townsend <robin@robin.town>

* Fix tests

Signed-off-by: Robin Townsend <robin@robin.town>

* Fix tests, again

Signed-off-by: Robin Townsend <robin@robin.town>

* Remove unnecessary export

Signed-off-by: Robin Townsend <robin@robin.town>

* Ack Jitsi events when we wait for them

Signed-off-by: Robin Townsend <robin@robin.town>
2022-03-22 16:14:11 -06:00