Created attachment 165928 [details] A screenshot showing screen sharing dialog in Microsoft Edge Browser SUMMARY *** NOTE: If you are reporting a crash, please try to attach a backtrace with debug symbols. See https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports *** STEPS TO REPRODUCE 1. Run a screensharing program (Google Meet on Microsoft Edge Browser in my case) 2. Trigger screen sharing, choosing "Entire Screen" to share OBSERVED RESULT The physical screen can be shared. However, the "New Virtual Output" option isn't usable. EXPECTED RESULT KDE's virtual desktop should be able to be shared in screen sharing picker. SOFTWARE/OS VERSIONS Linux/KDE Plasma: openSUSE Tumbleweed 20240209 (available in About System) KDE Plasma Version: 5.27.10 KDE Frameworks Version: 5.114.0 Qt Version: 5.15.2 ADDITIONAL INFORMATION Currently, in browsers, when triggering screen sharing, the choice is between sharing tabs, a window and Entire Screen (a single display in multi-monitor setup). However, I observed that my peers who are working on Macs are able to screen share one of their virtual desktops. That is, they have one physical screen with multiple virtual desktop, where the “screen” being shared is actually **one of the virtual desktops**. This is great when we need to show more than one window in online meetings (a virtual desktop), but not everything that can be seen in our physical screen (especially when working with only one physical display). As virtual desktops exist in KDE, both under x11 and wayland, I think it would be great if we can share the **virtual desktop** as a screen. The “New Virtual Output” in KDE Portal on wayland only create a new virtual output that seems to pipe directly into the browser screen share, where I cannot see the screen at all. This is of course, not usable. (I actually wonder what exactly is the use case for this virtual output). So my feature suggestion would be to allow each **virtual desktop** as a sharable screen in Portal screen picker. Of course the naming of the screen should be clear to distinguish sharing an actual screen (ie “Laptop Screen”) versus a virtual desktop (ie, “Desktop 2 on Laptop Screen”). And maybe, an option in KDE Settings on Virtual Desktop on whether to allow virtual desktop as sharable screen/device. I created a KDE Discuss forum post (https://discuss.kde.org/t/screen-sharing-support-for-kdes-virtual-desktop/6680) discussing this that hasn't gained much attention.
Reading a forum thread on screen sharing/capture at https://forum.manjaro.org/t/obs-cant-capture-screen-on-kde-plasma-wayland/147820 It seems that under Wayland, screen sharing is handled by Pipewire and xdg-desktop-portal-kde. So it seems like the requirements would be (1) KDE's virtual desktop will probably need to be renderable both when active and in background (2) KDE's virtual desktops to be a source that Pipewire can capture (3) xdg-desktop-portal-kde recognize virtual desktops as source I'd say this is a useful feature that is possible to implement without too much effort.
Setting to confirmed since this sounds like a reasonable feature and use case -- but if I understand correctly, this seems to require very big changes to kwin.
(In reply to fanzhuyifan from comment #2) > Setting to confirmed since this sounds like a reasonable feature and use > case -- but if I understand correctly, this seems to require very big > changes to kwin. Sorry, I really didn't mean to undermine the magnitude of the work required. I hope this gains enough interest that KDE developers would agree to implement it.
Hi all, Reading this discussion, I ask myself if this feature could also serve as the technical base for another interesting feature: Switch from local access to remote access and back while keeping all applications running. The local screen optionally (depending on the use case) does not show a copy of the remote screen, but e.g. a lock screen to not compromise information to anone having a look at the machine's physical screen. When kwin would be able to stream the contents of a desktop that is not currently shown on any physical screen (vitual desktop) _and_ the physical screen is showing something else at the same time, the local screen could also show the lock screen? It is already possible to move windows of running applications from virtual desktop to another with out the need to restart the app. So it would also be possible to move all open windows from the machine's local screen to a remote screen without restart? For some usecases like "remote support" or "present the screen during a conference" one would like to see same content locally and remote (or parts of it like only one virtual desktop). A different usecase "operating a machine sometimes locally and sometimes from remote" without having the content of the screen exposed to anyoune coming along while the machine is operated from remote would be a great benefit. E.g. when accessing your office machine from home office / remote via VPN without the need to reboot / restart the applications like it is neccessary with X11. What do you think?