feat: Screen share settings UI modal#1111
Conversation
587e295 to
5a2b4b6
Compare
| @@ -72,87 +77,89 @@ export function ParticipantTile(props: TileProps) { | |||
| }; | |||
|
|
|||
| return ( | |||
There was a problem hiding this comment.
I know the diff looks big here, but I actually just wrapped this in a big show block to disable showing screen shares if they're muted (as is the case when a screen share is getting configured)
This commit was made without the use of generative AI. Signed-off-by: Jacob Schlecht <dadadah@echoha.us>
This commit was made without the use of generative AI. Signed-off-by: Jacob Schlecht <dadadah@echoha.us>
This commit was made without the use of generative AI. Signed-off-by: Jacob Schlecht <dadadah@echoha.us>
This commit was made without the use of generative AI. Signed-off-by: Jacob Schlecht <dadadah@echoha.us>
This commit was made without the use of generative AI. Signed-off-by: Jacob Schlecht <dadadah@echoha.us>
This commit was made without the use of generative AI. Signed-off-by: Jacob Schlecht <dadadah@echoha.us>
This commit was made without the use of generative AI. Signed-off-by: Jacob Schlecht <dadadah@echoha.us>
This commit was made without the use of generative AI. Signed-off-by: Jacob Schlecht <dadadah@echoha.us>
This commit was made without the use of generative AI. Signed-off-by: Jacob Schlecht <dadadah@echoha.us>
This commit was made without the use of generative AI. Signed-off-by: Jacob Schlecht <dadadah@echoha.us>
3919785 to
8b6113d
Compare
This commit was made without the use of generative AI. Signed-off-by: Jacob Schlecht <dadadah@echoha.us>
This commit was made without the use of generative AI. Signed-off-by: Jacob Schlecht <dadadah@echoha.us>
07482bc to
ef6049a
Compare
|
I can't get these strings in the ScreenShareQualities.ts file to translate, it seems like it's executing outside the solid context. I can pass the lingui macro down the chain to the functions, but I'm not sure if there's a better way to do it? |
|
IIRC lingui provides a macro called Perhaps that's what you are looking for? (the thing being translated are the full quality names, right?) |
Yes, I'm using |
Signed-off-by: Jacob Schlecht <dadadah@echoha.us>
Signed-off-by: Jacob Schlecht <dadadah@echoha.us>
|
I can't figure out how to get the translations to work. Rather than hold this critical feature up for it, I just added a TODO mentioning it. This PR should be ready for review. |
Signed-off-by: Jacob Schlecht <dadadah@echoha.us>
Signed-off-by: Jacob Schlecht <dadadah@echoha.us>
This PR adds a screen share settings UI modal that pops up after choosing what window/screen to stream. It allows you to choose a screen share quality. Right now it only supports 720p@30fps, 1080p@30fps and Source@5fps. These values will only show up if the server is configured to allow streams of that size. The
Source@5fpsquality setting will cap the width and height to the configured limit, unless the limit is 0. The modal has a checkbox to not show the modal again. If you check this box, it will save your choice and disable the modal. You can enable it in the settings. You can also change the default screen share resolution chosen in the settings. TheVoicesettings section has been renamed toVoice & Video.This PR also adds a
FloatingSelectoption to the Form2 component.Requires stoatchat/javascript-client-sdk#149Requires #1112This PR is blocking #1070 and #1068
Closes #1069
How was this PR tested?
Shared screen from one client to another. Shared multiple screen resolutions and both landscape and portrait screens.
Simulated low resolution cap to ensure only low quality streaming was allowed (720p).
Screenshots & Screencasts (if appropriate)
In action:
Screencast.from.2026-04-11.17-18-42.webm
Settings UI:

Available resolutions:

Known Issues
Checklist:
Please declare, if any, LLM usage involved in creating this PR
Generative AI was not used in the creation of this PR.