How is window list for sharing in browser generated?

When I start sharing in a browser (Firefox, Chrome) I am presented with a selector that shows the screens, the windows, and the tabs that are available for shearing. Which component is responsible for generating this list?

It is WebRTC and in Firefox it should be this: MediaManager.cpp - mozsearch

1 Like

Thanks.
I’m trying to figure out why this selector only shows windows that are on the same virtual desktop as the browser (same behavior for Firefox, Chrome, and Chromium).
Any idea?

It is because “virtual desktops” are “window managers”, so the same thing as i3wm or swaywm. The window manager just reveals to the browser what is actually viewable. That has nothing to do with the browser itself, it just gets what the window manager provides.

When I remember correctly, you can move a window to the same virtual desktop as firefox. Catch it and then move it back to another virtual desktop, and it will still work.

Probably, pipewire+wayland will eliminate these limits in the future entirely.

1 Like

Thank you very much!

What puzzles me is that up until about the second week of December I was able to see all the open windows in that selector… then I installed kwinft, but that didn’t play so well with tiling and so I changed back to kwin. Next time I wanted to share a window I no longer found it. That was around mid-January.

Thanks also for sharing the workaround, but still… how come this never used to be necessary?