Skip to content

Add screencast-only fullscreen mode for group call screenshare#30279

Open
paterkleomenis wants to merge 1 commit intotelegramdesktop:devfrom
paterkleomenis:groupcall-screencast-fullscreen
Open

Add screencast-only fullscreen mode for group call screenshare#30279
paterkleomenis wants to merge 1 commit intotelegramdesktop:devfrom
paterkleomenis:groupcall-screencast-fullscreen

Conversation

@paterkleomenis
Copy link
Contributor

Summary

  • add a dedicated fullscreen toggle button next to mute in wide group-call controls for active screenshare
  • add screencast-only fullscreen mode that hides the members panel and expands the screenshare viewport
  • preserve and align double-click screenshare fullscreen behavior with the new screencast-only state
  • auto-hide center controls on inactivity in screencast-only fullscreen and show them again on mouse movement
  • disable speaking-outline rendering in fullscreen to avoid full-frame green highlighting artifacts

Testing

  • cmake --build out --config Debug --target Telegram

@ilya-fedin
Copy link
Contributor

Is it intended that this commit is also present in #30278?

@paterkleomenis
Copy link
Contributor Author

No, is it an issue?> Is it intended that this commit is also present in #30278?

@ilya-fedin
Copy link
Contributor

No, is it an issue?

Yes, if that other PR will get merged, this one will conflict.

@paterkleomenis
Copy link
Contributor Author

No, is it an issue?

Yes, if that other PR will get merged, this one will conflict.

I fixed it

@ilya-fedin
Copy link
Contributor

I noticed two problems:

  1. The number of participants duplicates and the duplicate one is even visible on top of the stream: изображение
  2. Both the new screenFull button and the maximize button on titlebar lead to fullscreen. I assume it's not intended? Perhaps the new button is not needed if you want fullscreen inside titlebar like in one-to-one calls.

@paterkleomenis paterkleomenis force-pushed the groupcall-screencast-fullscreen branch from 414ec7c to 99a2653 Compare February 16, 2026 10:14
@paterkleomenis
Copy link
Contributor Author

Fixed both issues:

  1. Participant count duplication — the _subtitle widget (showing participant count) could persist on top of the stream when transitioning to screencast-only fullscreen. Now it's explicitly destroyed when entering that mode.

  2. Redundant screenFull button — removed the separate fullscreen toggle button entirely. The titlebar maximize button already handles fullscreen for screenshare, same as in one-to-one calls.

@paterkleomenis paterkleomenis force-pushed the groupcall-screencast-fullscreen branch from 9e150e3 to 99a2653 Compare February 16, 2026 13:55
@ilya-fedin
Copy link
Contributor

The PR has conflicts

@paterkleomenis paterkleomenis force-pushed the groupcall-screencast-fullscreen branch from 99a2653 to d9d3806 Compare March 5, 2026 11:43
Introduce a dedicated fullscreen toggle in wide controls for screenshare.

When a screen endpoint is focused, fullscreen can now switch to a screencast-only layout that hides side panels. Fullscreen controls in this mode auto-hide on inactivity and reappear on mouse movement.

Also disable speaking outline rendering in fullscreen to avoid full-frame green highlighting tied to members panel speaking state.
@paterkleomenis paterkleomenis force-pushed the groupcall-screencast-fullscreen branch from d9d3806 to d3dd405 Compare March 5, 2026 11:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants