Commit Graph

1543 Commits

Author SHA1 Message Date
Michael Weimann 3be20cf434 Use doMaybeLocalRoomAction (#9038)
* Use doMaybeLocalRoomAction

* Revert unnecessary changes
2022-07-13 07:56:36 +02:00
Šimon Brandner 19e514d83c Remove dead code (#9035) 2022-07-11 07:52:44 +02:00
Michael Weimann 8641a5210b Add LocalRoom (#9023) 2022-07-11 07:33:37 +02:00
Travis Ralston 644b841591 Replace MSC3244 support with in-client room version checking (#9018)
* Replace MSC3244 support with in-client room version checking

* Fix irrelevant ternary

* It helps to use Jest correctly
2022-07-08 00:32:38 -06:00
Travis Ralston 7f5bb61a79 Support a module API surface for custom functionality (#8246)
* Early implementation of module API surface + functions for ILAG module

* Wire up dialog functions and ILAG-needed surface

* Ensure component renders for modules get overridden

* Respond to changes from module API interface

* Use a real module-api dependency

* Update for new Dialogs interface

* Add support for getConfigValue from module API

* Update the remainder of the module API interface

* Docs & cleanup

* Add some unit tests around module stuff

Needs end-to-end tests still.

* Appease early linters

* Break import cycles by not directly depending on Lifecycle

* Appease the linter

* Fix bad merge
2022-07-05 12:26:44 -06:00
Janne Mareike Koschinski 328d7ea5eb Remove unused code left over from the old search (#8947) 2022-06-30 17:14:49 +02:00
Kerry 4eab0deeb3 Live location share - explicitly stop beacons replaced beacons (PSG-544) (#8933)
* explicitly stop beacons before creating new ones

* remove unnecessary optional chain
2022-06-30 07:33:51 +00:00
Robin 3c14d93237 Reduce video rooms log spam (#8913)
* Reduce video rooms log spam

If you forget to call preventDefault in widget action handlers,
matrix-widget-api logs a bunch of errors complaining that the action is
unsupported/unhandled, even if it isn't.

* Fix tests
2022-06-29 16:09:41 +02:00
Robin 84cf40e0f3 Switch video rooms to spotlight layout when in PiP mode (#8912)
* Switch video rooms to spotlight layout when in PiP mode

* Add some comments
2022-06-27 20:45:13 +00:00
Robin ff4e66517b Connect to Jitsi unmuted by default (#8909) 2022-06-27 13:26:25 -04:00
Travis Ralston 97a9af42d5 Stop setting auto_join on space child events (#8863)
It's not a specified property and not even used.
2022-06-26 23:28:02 +00:00
Robin ef48443dc9 Show chat panel when opening a video room with unread messages (#8812)
* Show chat panel when opening a video room with unread messages

* Remove unnecessary calls to private methods in tests

* Make room ID mandatory when toggling the right panel

* Restore the isViewingRoom check

* Test RightPanelStore

* Make the constructor private again

* Add even more tests

* Fix onReady
2022-06-17 16:57:40 -04:00
Michael Telatynski 3c5c2bef6d Remove Piwik support (#8835)
* Remove all mentions of Piwik

* Kill off all consumer of the old Piwik Analytics module

* Simplify ModalManager interface

* i18n

* Attempt to fix old e2e tests

* Remove unused component

* Iterate PR
2022-06-14 17:51:51 +01:00
Robin d9396b0b54 Expire video member events after 1 hour (#8776)
* Expire video member events after 1 hour

* Iterate based on feedback

* Validate the types of video member events better

* Even more parentheses
2022-06-09 13:19:52 +00:00
Michael Telatynski 8036985204 Update matrix-analytics-events to @matrix-org/analytics-events (#8778)
* Update matrix-analytics-events to @matrix-org/analytics-events

* Update install-deps.sh

* Update layered.sh

* Update BeaconMarker-test.tsx.snap

* Update BeaconStatus-test.tsx.snap
2022-06-07 20:08:36 +01:00
Robin 0d1bb3bd9a Show a dialog when Jitsi encounters an error (#8701)
* Show a dialog when Jitsi encounters an error

* Capitalize 'Meet'

* Revise copy to not mention Jitsi
2022-05-26 14:14:13 +00:00
Michael Telatynski 655bca63e6 Move Enterprise Erin tests from Puppeteer to Cypress (#8569)
* Move Enterprise Erin tests from Puppeteer to Cypress

* delint

* types

* Fix double space

* Better handle logout in Lifecycle

* Fix test by awaiting the network request

* Improve some logout handlings

* Try try try again

* Delint

* Fix tests

* Delint
2022-05-26 10:12:49 +00:00
Michael Telatynski d75e2f19c5 Fix font not resetting when logging out (#8670)
* Fix font not resetting when logging out

* Adopt on_logged_in and on_logged_out into DispatcherAction

* Add tests

* Add copyright
2022-05-26 09:56:53 +01:00
Robin 7edc4b1965 Stop connecting to a video room if the widget messaging disappears (#8660)
* Stop connecting to a video room if the widget messaging disappears

* Clean up more listeners

* Clean up even more listeners
2022-05-24 07:43:27 -04:00
Robin 79ad065d6a Stop Jitsi if we time out while connecting to a video room (#8659) 2022-05-20 16:25:28 -04:00
Michael Telatynski 762d052501 Fix offline status in window title not working reliably (#8656) 2022-05-20 17:46:16 +01:00
Janne Mareike Koschinski 2d386556a6 ensure metaspace changes correctly notify listeners (#8611) 2022-05-18 15:15:25 +02:00
Sinharitik589 d717d06ce5 Prevent invites from showing up in breadcrumbs (#8344) 2022-05-17 15:08:36 +01:00
Robin ceda77d7dc Proactively fix stuck devices in video rooms (#8587)
* Proactively fix stuck devices in video rooms

* Fix tests

* Explain why we're disabling the lint rule

* Apply code review suggestions

* Back VideoChannelStore's flags by SettingsStore instead of localStorage
2022-05-16 16:54:08 -04:00
Michael Telatynski 8ae9f7d79a Fix edge case thread summaries around events without a msgtype (#8576)
* Fix edge case thread summaries around events without a msgtype

* Remove incomprehensible comment
2022-05-16 08:11:50 +00:00
Šimon Brandner 4c1c12bbc4 Fix favourites metaspace not updating (#8594) 2022-05-14 11:45:15 +00:00
Michael Telatynski f9c85ac7c2 Fix codepath which can wrongly cause automatic space switch from all rooms (#8560)
* Fix codepath which can wrongly cause automatic space switch from all rooms

* Improve typing
2022-05-11 16:44:02 +01:00
Michael Telatynski 39262215cd Remove redundant checkKey parameter (#8559) 2022-05-11 11:10:50 +01:00
Michael Telatynski ad4d3f9a88 Move threads e2e tests over to cypress (#8501)
* Add non-consent (default) Synapse template

* Add consent test

* Add create room test

* Stash work

* Initial threads tests

* fix

* Delete old threads e2e tests, plan new ones

* Fix typed s'more

* Try something else

* specify d.ts

* Fix types once and for all?

* Fix the consent tests

* Iterate threads test harness

* Fix dispatcher types

* Iterate threads test

* fix typing

* Alternative import attempt

* let it break let it break let it break

* Tweak types

* Stash

* delint and update docs

* null-guard scrollIntoView

* Iterate threads test

* Apply suggestions from code review
2022-05-10 17:09:31 +00:00
Travis Ralston 548290b006 Run a minor code quality checker over the repo (#8524)
* Run a minor code quality checker over the repo

Largely targeted at spelling of common words and misc code issues.

* Update snapshots
2022-05-09 22:52:05 +00:00
Robin 19efa093e0 Handle Jitsi Meet crashes more gracefully (#8541) 2022-05-09 13:46:08 +00:00
Travis Ralston d39d332f54 Merge pull request #8521 from matrix-org/travis/remove-unused-labs-1
Remove some labs features which don't get used or create maintenance burden: custom status, multiple integration managers, and do not disturb
2022-05-06 13:21:07 -06:00
Travis Ralston 2aec197354 Remove feature_many_integration_managers
Rationale: If we want this feature, design will do it properly.
2022-05-06 12:46:26 -06:00
Travis Ralston aa664b88a4 Remove feature_custom_status
Rationale: It's legacy and wrong in so many ways.
2022-05-06 12:39:03 -06:00
Germain 3a63c88a11 Order new search dialog results by recency (#8444)
* Order new search dialog results by recency

* Add getLastTs tests

* Add sort rooms tests
2022-05-05 12:19:11 +01:00
Robin f34b4f1182 Disconnect from video rooms when leaving (#8500)
* Disconnect from video rooms when leaving

* Listen on the specific room

* Fix lints
2022-05-04 21:02:53 +00:00
Michael Telatynski 964c60d086 Apply corrections identified by SonarQube (#8457) 2022-05-03 22:04:37 +01:00
Michael Telatynski f29ef04751 Fix race conditions around threads (#8448) 2022-05-03 14:25:08 +01:00
Michael Telatynski fddbc429a9 Fix issue with thread notification state ignoring initial events (#8417) 2022-04-29 09:48:57 +01:00
Kerry 472222c195 LLS: error handling on stopping beacon (#8406)
* shared stopping error state for timeline, maxi and room warnign

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

* check for stopping errors in roomlist share warning

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

* lint

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

* test stopping errors in OwnBeaconStore

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

* update LeftPanelLiveShareWarning tests for stopping errors

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

* reinstate try/catch for stopping beacons in create

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

* remove unnecessary and buggy beacon stopping on creation

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-04-28 12:03:51 +00:00
Kerry 8c6786bad6 LLS: rename wireError (#8401)
* rename wireError in ownbeaconstore to locationPublishError

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

* rename getLiveBeaconIdsWithWireError -> getLiveBeaconIdsWithLocationPublishError

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

* rename wire error variables in components

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

* new snapshots for new test names

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

* fix bad capitalisation on onResetLocationPublishError

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

* missed variable

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-04-25 12:44:18 +00:00
Robin 6bfe0436e5 Fix infinite loop when pinning/unpinning persistent widgets (#8396)
Pinning or unpinning a persistent widget, such as Jitsi, could cause the
PiP view and the app drawer to fight for control over the widget, since
the PiP view never realized that it was supposed to relinquish control.
This was due to a race between the WidgetLayoutStore update and the
AppTile lifecycle tracking update.
2022-04-25 08:29:54 -04:00
Robin 2a396a406d Stick connected video rooms to the top of the room list (#8353) 2022-04-22 08:17:31 -04:00
Kerry 988d300258 Live location sharing: only share to beacons created on device (#8378)
* create live beacons in ownbeaconstore and test

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

* more mocks in RoomLiveShareWarning

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

* extend mocks in components

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

* comment

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

* remove another comment

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

* extra ? hedge in roommembers change

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

* listen to destroy and prune local store on stop

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

* tests

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

* update copy pasted copyright to 2022

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-04-22 12:05:36 +00:00
Kerry a3a7c60dd7 LLS: Remove beacon info illegal replace relation (#8390)
* dont apply illegal replace relation to beacon_info event

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

* only display tiles for beacon infos with live prop

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

* copyrights

Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-04-22 11:38:27 +00:00
Robin c70816d763 Persist audio and video mute state in video rooms (#8376)
…so that video lobbies remember whether you've disabled your camera.
2022-04-21 15:00:32 +00:00
Robin dd880df6ae Forcefully disconnect from video rooms on logout and tab close (#8375)
* Forcefully disconnect from video rooms on logout

* Forcefully disconnect from video rooms on tab close
2022-04-21 07:41:58 -04:00
Robin 6e86a14cc9 Show a lobby screen in video rooms (#8287)
* Show a lobby screen in video rooms

* Add connecting state

* Test VideoRoomView

* Test VideoLobby

* Get the local video stream with useAsyncMemo

* Clean up code review nits

* Explicitly state what !important is overriding

* Use spacing variables

* Wait for video channel messaging

* Update join button copy

* Show frame on both the lobby and widget

* Force dark theme for video lobby

* Wait for the widget to be ready

* Make VideoChannelStore constructor private

* Allow video lobby to shrink

* Add invite button to video room header

* Show connected members on lobby screen

* Make avatars in video lobby clickable

* Increase video channel store timeout

* Fix Jitsi Meet getting wedged on startup in Chrome and Safari

* Revert "Fix Jitsi Meet getting wedged on startup in Chrome and Safari"

This reverts commit 9f77b8c227c1a5bffa5d91b0c48bf3bbc44d4cec.

* Disable device buttons while connecting

* Factor RoomFacePile into a separate file

* Fix i18n lint

* Fix switching video channels while connected

* Properly limit number of connected members in face pile

* Fix CSS lint
2022-04-20 11:03:33 -04:00
Michael Telatynski 2f6b76755c Fix RightPanelStore handling first room on app launch wrong (#8370) 2022-04-20 11:05:55 +01:00
Robin Kouwenhoven aa33442983 Move RequiresClient from MatrixCapabilities to ElementWidgetCapabilities (#8290)
* Move RequiresClient from MatrixCapabilities to ElementWidgetCapabilities

Signed-off-by: Robin Kouwenhoven <r.kouwenhoven@outlook.com>

* Replace usages of RequiresClient with new location

Signed-off-by: Robin Kouwenhoven <r.kouwenhoven@outlook.com>

Co-authored-by: Travis Ralston <travisr@matrix.org>
2022-04-14 21:25:53 +00:00