Robin
f152310c08
Use random widget IDs for video rooms ( #8739 )
2022-06-02 09:10:22 -04: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
Janne Mareike Koschinski
2d386556a6
ensure metaspace changes correctly notify listeners ( #8611 )
2022-05-18 15:15:25 +02: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
Kerry
dc346d5e83
test typescriptification - RoomViewStore ( #8539 )
...
* test/stores/RoomViewStore-test.js -> test/stores/RoomViewStore-test.tsx
Signed-off-by: Kerry Archibald <kerrya@element.io>
* fix tsc issues
Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-05-09 15:14:45 +02: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
Kerry
e233cf5061
Live location sharing: fix safari timestamps pt 2 ( #8443 )
...
* handle safari cocoa core data timestamps
Signed-off-by: Kerry Archibald <kerrya@element.io>
* actually fix safari timestamp issue properly
Signed-off-by: Kerry Archibald <kerrya@element.io>
* actually fix safari timestamp issue properly
Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-04-29 09:12:28 +00: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
Kerry
73e8387799
test functional EventUtils ( #8386 )
...
* extract poll event test util
Signed-off-by: Kerry Archibald <kerrya@element.io>
* test isContentActionable
Signed-off-by: Kerry Archibald <kerrya@element.io>
* test canEditContent
Signed-off-by: Kerry Archibald <kerrya@element.io>
* test functional eventutils
Signed-off-by: Kerry Archibald <kerrya@element.io>
* copyrights
Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-04-21 18:14:10 +02: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
Kerry
44d446be89
Live location sharing - set replaces relation when stopping beacon ( #8266 )
...
* set replaces relation on stopping beacon
Signed-off-by: Kerry Archibald <kerrya@element.io>
* update tests for stopBeacon
Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-04-11 10:28:43 +02:00
Kerry
03d0969ae3
Live location sharing - update beacon_info implementation to latest MSC ( #8256 )
...
* update calls to set and createLiveBeacon
Signed-off-by: Kerry Archibald <kerrya@element.io>
* fix stop beacon
Signed-off-by: Kerry Archibald <kerrya@element.io>
* remove variable event type from beacon utils
Signed-off-by: Kerry Archibald <kerrya@element.io>
* use beacon identifier
Signed-off-by: Kerry Archibald <kerrya@element.io>
* fix RoomLiveShareWarning tests
Signed-off-by: Kerry Archibald <kerrya@element.io>
* add case for beacon update
Signed-off-by: Kerry Archibald <kerrya@element.io>
* lint
Signed-off-by: Kerry Archibald <kerrya@element.io>
* more lint
Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-04-08 10:53:06 +02:00
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
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
Travis Ralston
97efdf7094
Merge branch 'develop' into travis/remove-skinning
2022-03-31 19:25:43 -06: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
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
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
a987ead7d2
Step 8.1: Remove skinning setup from all tests
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
Kerry
b04d31b5be
Live location sharing: live share warning in room ( #8100 )
...
* 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>
* tidy
Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-03-22 13:57:12 +00:00
Kerry
a80e55d38d
add helpers for beacon duration calculations ( #8101 )
...
* add helpers for beacon duration calculations
Signed-off-by: Kerry Archibald <kerrya@element.io>
* makeBeaconInfoEvent timestsamp prop
Signed-off-by: Kerry Archibald <kerrya@element.io>
* ad copyright
Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-03-22 10:46:47 +00:00
Kerry
ab934a2a08
kill beacons on expiry ( #8075 )
...
Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-03-18 14:38:41 +01:00
Kerry
bb6ae3fdbc
Live beacons: track users live beacons ( #8061 )
...
* add simple live share warning
Signed-off-by: Kerry Archibald <kerrya@element.io>
* rough first cut of OwnBeaconStore
Signed-off-by: Kerry Archibald <kerrya@element.io>
* working (?) has live beacons status
Signed-off-by: Kerry Archibald <kerrya@element.io>
* lint
Signed-off-by: Kerry Archibald <kerrya@element.io>
* add left panel share warning
Signed-off-by: Kerry Archibald <kerrya@element.io>
* setup for tests
Signed-off-by: Kerry Archibald <kerrya@element.io>
* test ownbeaconstore
Signed-off-by: Kerry Archibald <kerrya@element.io>
* add copyright
Signed-off-by: Kerry Archibald <kerrya@element.io>
* add copyright
Signed-off-by: Kerry Archibald <kerrya@element.io>
* remove warning banner
Signed-off-by: Kerry Archibald <kerrya@element.io>
* fix test
Signed-off-by: Kerry Archibald <kerrya@element.io>
* fix tests for weird asyncstore closure issues
Signed-off-by: Kerry Archibald <kerrya@element.io>
* fix OwnBeaconStore more...
Signed-off-by: Kerry Archibald <kerrya@element.io>
* revert loose change to LeftPanel
Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-03-16 17:35:09 +01:00
Kerry
df6c53ff41
include /test/stores in tsconfig ( #8026 )
...
* fix space store emits
Signed-off-by: Kerry Archibald <kerrya@element.io>
* fix spacestore-test imports
* fix export-test.tsx
Signed-off-by: Kerry Archibald <kerrya@element.io>
* include test/utils to tsconfig
Signed-off-by: Kerry Archibald <kerrya@element.io>
* fix types in SpaceStore-test
Signed-off-by: Kerry Archibald <kerrya@element.io>
* fix ts issues in rest of test/stores
Signed-off-by: Kerry Archibald <kerrya@element.io>
* include test/stores in tsconfig
Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-03-11 17:03:33 +01:00
Michael Telatynski
b8f37a46f0
Fix bug with some space selections not being applied ( #7971 )
2022-03-03 21:42:18 +00:00
Michael Telatynski
f25e6813bb
Mandate use of js-sdk/src/matrix import over js-sdk/src ( #7933 )
2022-03-01 20:42:05 +00:00
Michael Telatynski
08c47ac473
Fix changing space sometimes bouncing to the wrong space ( #7910 )
2022-03-01 08:33:29 +00:00
Kerry
130bd6aa63
manage voicerecording state when deleting or sending a voice message ( #7896 )
...
* manage voicerecording state when deleting or sending a voice message
Signed-off-by: Kerry Archibald <kerrya@element.io>
* comment
Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-02-24 18:54:06 +01:00
Kerry
5e76d988ca
convert test-utils to typescript ( #7877 )
...
* move js utils into directory
Signed-off-by: Kerry Archibald <kerrya@element.io>
* typescripterize js test-utils
Signed-off-by: Kerry Archibald <kerrya@element.io>
* move test utils to directory
Signed-off-by: Kerry Archibald <kerrya@element.io>
* move remaining mock functions to directory
Signed-off-by: Kerry Archibald <kerrya@element.io>
* update imports
Signed-off-by: Kerry Archibald <kerrya@element.io>
* missed copyright
Signed-off-by: Kerry Archibald <kerrya@element.io>
* type wait for update
Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-02-23 11:21:11 +00:00
Kerry
5b8d440406
type Actions ( #7862 )
...
* type ViewHomPage action
Signed-off-by: Kerry Archibald <kerrya@element.io>
* type spacestore actions
Signed-off-by: Kerry Archibald <kerrya@element.io>
* lint
Signed-off-by: Kerry Archibald <kerrya@element.io>
* add action types
Signed-off-by: Kerry Archibald <kerrya@element.io>
* use new action types in stores
Signed-off-by: Kerry Archibald <kerrya@element.io>
* remove debug change
Signed-off-by: Kerry Archibald <kerrya@element.io>
* stricter keyboard shortcut types
Signed-off-by: Kerry Archibald <kerrya@element.io>
* action comments
Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-02-22 10:04:27 +00:00
Kerry
08a0c6f86c
Don't aggregate rooms and users in SpaceStore ( #7723 )
...
* add direct child maps
* track rooms, users and space children in flat hierarchy in spacestore
Signed-off-by: Kerry Archibald <kerrya@element.io>
* update spacefiltercondition to use new spacestore
* remove unused code
Signed-off-by: Kerry Archibald <kerrya@element.io>
* typos
Signed-off-by: Kerry Archibald <kerrya@element.io>
* only build flattened rooms set once per space when updating notifs
* copyright
Signed-off-by: Kerry Archibald <kerrya@element.io>
* remove unnecessary currying
Signed-off-by: Kerry Archibald <kerrya@element.io>
* rename SpaceStore spaceFilteredRooms => roomsIdsBySpace, spaceFilteredUsers => userIdsBySpace
Signed-off-by: Kerry Archibald <kerrya@element.io>
* cache aggregates rooms and users by space
Signed-off-by: Kerry Archibald <kerrya@element.io>
* emit events recursively up parent spaces on changes
Signed-off-by: Kerry Archibald <kerrya@element.io>
* exclude meta spaces from aggregate cache
Signed-off-by: Kerry Archibald <kerrya@element.io>
* stray log
* fix emit on member update
Signed-off-by: Kerry Archibald <kerrya@element.io>
* call order
Signed-off-by: Kerry Archibald <kerrya@element.io>
* extend existing getKnownParents fn
Signed-off-by: Kerry Archibald <kerrya@element.io>
* refine types and comments
Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-02-17 21:24:05 +01:00
Michael Telatynski
658590e5bc
More posthog tracking around joining rooms and room search ( #7807 )
2022-02-17 18:03:27 +00:00
David Baker
3be74d38d6
Fix src/lib import ( #7825 )
2022-02-17 10:06:19 +00:00
David Baker
01b00bf3fe
Add test for RoomNotificationState ( #7820 )
...
Regression test for https://github.com/vector-im/element-web/issues/20859
2022-02-17 09:18:37 +00:00
J. Ryan Stinnett
0dc1355441
Fix right panel data flow ( #7811 )
2022-02-16 11:19:28 +00:00
Michael Telatynski
cfa6e266cd
Wire up new fields on the ViewRoom posthog event and more interactions ( #7787 )
2022-02-14 19:31:13 +00:00
Kerry
f7a3027e50
runAllTimers -> runOnlyPendingTimers in SpaceStore-test ( #7634 )
...
* runAllTimers -> runOnlyPendingTimers in SpaceStore-test
Signed-off-by: Kerry Archibald <kerrya@element.io>
* runAllTimers for switch to first valid space when selected metaspace is disabled
Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-01-26 11:38:07 +01:00
Michael Telatynski
8ddd677c35
De-labs Metaspaces ( #7613 )
2022-01-25 12:33:17 +00:00
Travis Ralston
65987e6b72
Move all polls processing to events-sdk & prep for stable polls ( #7517 )
...
* Move all polls processing to events-sdk
This makes polls support the full range of extensible events (both parsing and generation).
* Appease the linter
* Fix & update tests
* Update events-sdk for polls bugfix
* Update events-sdk for typechecking
* Add missing type cast
* Update per review
2022-01-17 10:06:30 -07:00
Michael Telatynski
ec6c1b8272
Fix RoomViewStore forgetting some details of a view room call ( #7512 )
2022-01-12 13:12:28 -07:00