Commit graph

367 commits

Author SHA1 Message Date
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
David Baker
cc9651089e
Fix freeze/crash when 1:1 calling (#8057)
* Fix freeze/crash when 1:1 calling

Don't log call feed objects because they reference the client and
it causes the client to get logged too.

* Log purpose too
2022-03-15 13:52:22 +00:00
Robin
744eeb53fe
Don't assume that widget IDs are unique (#8052)
* Don't assume that widget IDs are unique

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

* Don't remove live tiles that don't exist

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

* Add unit test for AppTile's live tile tracking

Signed-off-by: Robin Townsend <robin@robin.town>
2022-03-15 12:15:26 +00:00
J. Ryan Stinnett
65691202f7
Add lint for unused locals (#8007) 2022-03-09 12:05:16 +00:00
David Baker
5c5dc69547
Remove log line to try to fix freeze on answering VoIP call (#7883)
The profiles point to some huge object being logged in VideoFeed's
playMedia() method, but this is the only log line added recently.
I can't see how this could possibly log anything huge, but not
sure what else to try, so let's try removing this as an experiment.
The bug it was added to diagnose seems to be fixed now anyway.

For https://github.com/vector-im/element-web/issues/21181
2022-02-23 19:10:36 +00:00
Šimon Brandner
93a9af7b3a
Keybinding code unification #3 (#7850) 2022-02-23 09:12:04 +00:00
Michael Telatynski
658590e5bc
More posthog tracking around joining rooms and room search (#7807) 2022-02-17 18:03:27 +00:00
J. Ryan Stinnett
a939184e10
Tear down AppTile using lifecycle tracking (#7833) 2022-02-17 16:30:36 +00:00
Šimon Brandner
73899bb2e3
Switch to IPC channel for getDesktopCapturerSources (#7782) 2022-02-11 10:41:15 +00:00
Michael Telatynski
0d6ef76605
Add analytics for the ViewRoom action (#7666) 2022-02-10 14:29:55 +00:00
Michael Telatynski
ec92102fe3
Properly handle persistent widgets when room is left (#7724) 2022-02-07 14:40:22 +00:00
David Baker
3f789d32c1
Add logging to diagnose no-video bug (#7721)
Log in/outbound RTP stats so we can see ifn we're sending & receiving
video, and log when we successfully play the video element.
2022-02-04 14:02:56 +00:00
Michael Telatynski
79d9a0c0f7
Fix soft-crash when hanging up Jitsi via PIP (#7645) 2022-01-26 15:28:04 +00:00
Timo
9d9b77d5e1
Make widgets not reload (persistent) between center and top container (#7575) 2022-01-24 15:24:30 +00:00
Šimon Brandner
b5d11336f7
Add ability to switch between voice & video in calls (#7155) 2022-01-24 12:48:35 +00:00
Kerry
50de35cd1a
truncate room name on pip header (#7538)
Signed-off-by: Kerry Archibald <kerrya@element.io>
2022-01-14 10:37:30 +00:00
Timo
ef95644e23
Render Jitsi (and other sticky widgets) in PiP container, so it can be dragged and the "jump to room functionality" is provided (#7450)
Co-authored-by: J. Ryan Stinnett <jryans@gmail.com>
2022-01-13 12:10:41 +01:00
Timo
f6effc52fd
Fix active Jitsi calls (and other active widgets) not being visible on screen, by showing them in PiP if they are not visible in any other container (#7435)
Co-authored-by: J. Ryan Stinnett <jryans@gmail.com>
2022-01-11 11:25:21 +01:00
Michael Telatynski
44d7d74949
Call view accessibility fixes (#7439) 2022-01-04 08:57:46 +00:00
Šimon Brandner
38ba198fea
Fix dialpad positioning (#7446) 2021-12-23 15:02:59 +00:00
Aaron Raimist
2e8a93834b Auto fix
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2021-12-09 09:10:23 +00:00
Aaron Raimist
7b94e13a84 Merge branch 'develop' into sort-imports
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2021-12-09 08:34:20 +00:00
Michael Telatynski
b5a488b01b
Fix CallPreview room is null (#7265) 2021-12-02 14:07:27 +00:00
Šimon Brandner
cbb34d8ac7
Make CallHandler more EventEmittery (#6704)
* sharedInstance() -> instance

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Use CallState event instead of dispatching

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Simplifie some code

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Use a method to start a call instead of the dispatcher

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Use a method instead of place_conference_call

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Make terminateCallApp() and hangupCallApp() public

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Use hangupAllCalls() instead of the dispatcher

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Make dialNumber(), startTransferToMatrixID() and startTransferToPhoneNumber() public instead of using the dispatcher

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Use answerCall() instead of using the dispatcher

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Use hangupOrReject() instead of the dispatcher

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Update docs

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Improve TS

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Dispatch call_state, see https://github.com/vector-im/element-web/pull/18823#issuecomment-917377277

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Add missing import

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-11-30 18:09:13 +00:00
Timo
37828ab084
Maximised widgets always force a call to be shown in PIP mode (#7163) 2021-11-25 22:14:19 +01:00
Renan Cleyson
ae0dba4e87
Add view_room to Action enum (#7203)
* Add ViewRoom action to Action enum

Signed-off-by: Renan <renancleyson.f@gmail.com>

* Change view_room occurrences to Action.ViewRoom

Signed-off-by: Renan <renancleyson.f@gmail.com>

* Add missing Action import
2021-11-25 21:49:43 +01:00
Timo
a156ba8be9
Fix video call container size inconsistencies (#7170) 2021-11-23 11:13:51 +01:00
Šimon Brandner
816136de97
Make double-clicking the PiP take you to the call room (#7142) 2021-11-17 12:49:43 +00:00
Šimon Brandner
bafeb38472
Improve VoIP UI/UX (#7048)
* Remove speaking indicator

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Remove mic icon for primary feed

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Remove caching as it doesn't seem to be neccessary

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Add call view buttons colors

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Refactor button code

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Update call view button icons

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* i18n

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Add dialpad icon

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Fix button sizing in PiP

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>

* Fix secondary voice video feed color

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-11-15 17:24:11 +00:00
Aaron Raimist
f3867ad0a9 Merge branch 'develop' into sort-imports 2021-10-27 21:50:56 -05:00
Šimon Brandner
64c3f0a9b1
Fix fullscreening a call while connecting (#7019) 2021-10-25 11:40:44 +01:00
Šimon Brandner
75c7daa2c9
Handle no selected screen when screen-sharing (#7018) 2021-10-25 10:44:37 +01:00
Aaron Raimist
bdc56be863
Auto fix
Signed-off-by: Aaron Raimist <aaron@raim.ist>
2021-10-22 17:23:37 -05:00
Dariusz Niemczyk
5e73a212f4 Replace console.error with logger.error
Related https://github.com/vector-im/element-web/issues/18425
2021-10-18 14:08:23 +02:00
Travis Ralston
77ad0a9142
Merge pull request #6699 from SimonBrandner/fix/improve-aux-panel/18787
Improve AUX panel behaviour
2021-09-27 10:16:05 -06:00
Dariusz Niemczyk
2d1d42b90e
Globally replace all console.logs via codemod (#6827)
This commit replaces all the `console.log` to `logger.log` via an automated script.
Related: vector-im/element-web#18425
2021-09-21 09:48:09 -06:00
Šimon Brandner
a2977f5b17
Update muting to work with the js-sdk call upgrade changes
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-09-18 12:40:32 +02:00
Šimon Brandner
0defc4b14b
Don't show screensharing dialog on web
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-09-11 09:03:04 +02:00
Šimon Brandner
d0b95b7d3d
Don't use a callback in setScreensharingEnabled()
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-09-01 18:38:09 +02:00
Šimon Brandner
54cd385e6d
Improve AUX panel behaviour
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-08-27 13:31:43 +02:00
Šimon Brandner
a08310e454
Emit Speaking events from CallFeed
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-08-19 14:48:15 +02:00
Šimon Brandner
abab31c33b
Add a speaking indicator
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-08-19 11:42:43 +02:00
David Baker
90a6f251c7
Merge pull request #6627 from SimonBrandner/fix/voip
Properly fix VoIP issues
2021-08-18 18:14:16 +01:00
David Baker
946ae73e1d
Merge pull request #6615 from SimonBrandner/fix/media-error
Properly handle media errors
2021-08-18 11:54:08 +01:00
Šimon Brandner
3fdf4d13ca
Proper init in constructors
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-08-17 09:48:25 +02:00
Šimon Brandner
64aa53ab24
Correctly handle media errors
The methods need to be async since play() is async, otherwise there is no point in having the try catch blocks

Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-08-15 13:33:49 +02:00
Šimon Brandner
a6cde3256e
Properly handle call change
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-08-15 12:56:29 +02:00
Andrew Morgan
1ad35b1564
Keep number field in focus when pressing dialpad buttons (#6520) 2021-08-12 18:58:06 +01:00
Šimon Brandner
29d20b8125
Use AccessibleTooltipButton
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-08-12 08:11:11 +02:00
Šimon Brandner
012f2c9e7e
This doesn't need to be here as it was moved into CallViewButtons
Signed-off-by: Šimon Brandner <simon.bra.ag@gmail.com>
2021-08-11 19:16:55 +02:00