Page Menu
Home
Phorge
Search
Configure Global Search
Log In
Files
F117380874
D2221.1774821519.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Flag For Later
Award Token
Authored By
Unknown
Size
2 KB
Referenced Files
None
Subscribers
None
D2221.1774821519.diff
View Options
diff --git a/src/resources/js/meet/app.js b/src/resources/js/meet/app.js
--- a/src/resources/js/meet/app.js
+++ b/src/resources/js/meet/app.js
@@ -820,10 +820,19 @@
update()
})
- // TODO: Here the user is asked for media permissions again
- // should we rather start the stream without asking the user?
- // Or maybe we want to display the media setup/preview form?
- // Need to find a way to do this.
+ // Open the media setup dialog
+ // Note: If user didn't give permission to media before joining the room
+ // he will not be able to use them now. Changing permissions requires
+ // a page refresh.
+ // Note: In Firefox I'm always being asked again for media permissions.
+ // It does not happen in Chrome. In Chrome the cam/mic will be just re-used.
+ // I.e. streaming starts automatically.
+ // It might make sense to not start streaming automatically in any cirmustances,
+ // display the dialog and wait until user closes it, but this would be
+ // a bigger refactoring.
+ if (sessionData.onMediaSetup) {
+ sessionData.onMediaSetup()
+ }
} else {
// Inform the vue component, so it can update some UI controls
update()
diff --git a/src/tests/Browser/Meet/RoomSetupTest.php b/src/tests/Browser/Meet/RoomSetupTest.php
--- a/src/tests/Browser/Meet/RoomSetupTest.php
+++ b/src/tests/Browser/Meet/RoomSetupTest.php
@@ -456,6 +456,10 @@
->assertElementsCount('@session div.meet-subscriber', 0);
$guest1
+ ->with(new Dialog('#media-setup-dialog'), function (Browser $browser) {
+ $browser->assertSeeIn('@title', 'Media setup')
+ ->click('@button-action');
+ })
->waitFor('@session .meet-video.self')
->assertElementsCount('@session div.meet-video', 2)
->assertElementsCount('@session video', 2)
@@ -486,6 +490,10 @@
->waitUntilMissing('.dropdown-menu');
})
->waitUntilMissing('@session .meet-subscriber.self')
+ ->with(new Dialog('#media-setup-dialog'), function (Browser $browser) {
+ $browser->assertSeeIn('@title', 'Media setup')
+ ->click('@button-action');
+ })
->waitFor('@session div.meet-video.self')
->assertElementsCount('@session div.meet-video', 2)
->assertElementsCount('@session video', 2)
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Sun, Mar 29, 9:58 PM (3 d, 20 h ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
18776820
Default Alt Text
D2221.1774821519.diff (2 KB)
Attached To
Mode
D2221: On promotion to publisher display the media setup dialog
Attached
Detach File
Event Timeline