Two cases, both from signals LiveKit already gives:
Shared window closed → the track ends (ended on the MediaStreamTrack) but the tile can linger black. Stop the share cleanly and emit a host-visible notice (io.lotus.call_state flag or a dedicated action) so cinny can toast "Screenshare ended — the window was closed".
Still sharing? after 30 min of sharing with no other participants in the call (everyone left) → one notice, once. Never while others are present.
Host side (cinny) renders the toast; fork side detects.
Two cases, both from signals LiveKit already gives:
1. **Shared window closed** → the track ends (`ended` on the MediaStreamTrack) but the tile can linger black. Stop the share cleanly and emit a host-visible notice (`io.lotus.call_state` flag or a dedicated action) so cinny can toast "Screenshare ended — the window was closed".
2. **Still sharing?** after 30 min of sharing with **no other participants in the call** (everyone left) → one notice, once. Never while others are present.
Host side (cinny) renders the toast; fork side detects.
jared
added this to the Features 2026-Q4 milestone 2026-09-17 16:26:16 -04:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Two cases, both from signals LiveKit already gives:
endedon the MediaStreamTrack) but the tile can linger black. Stop the share cleanly and emit a host-visible notice (io.lotus.call_stateflag or a dedicated action) so cinny can toast "Screenshare ended — the window was closed".Host side (cinny) renders the toast; fork side detects.