SUMMARY Screen sharing on Wayland doesn't work out of the box, since the WebRTCPipeWireCapturer chromium options is disabled by default. STEPS TO REPRODUCE 1. Go to https://mozilla.github.io/webrtc-landing/gum_test.html 2. Click "Screen capture" and accept permissions OBSERVED RESULT Black screen EXPECTED RESULT Screen is shared Setting the env variable QTWEBENGINE_CHROMIUM_FLAGS="--enable-features=WebRTCPipeWireCapturer" makes it work. Note that QtWebengine crashes when compiled with pipewire 0.2 if the compositor is running a recent pipewire version, so in order to test this a patched QtWebengine is probably needed (such as the one shipped by Arch Linux or Flathub)
A possibly relevant merge request was started @ https://invent.kde.org/network/falkon/-/merge_requests/34
Git commit 02feca74ce5497db466a6c547a320a4f23425ac4 by Antonio Rojas. Committed on 20/03/2022 at 13:08. Pushed by jurajo into branch 'master'. Enable WebRTC screen capturer in WebEngine This is disabled by default, and without it screen sharing doesn't work on Wayland Port of https://invent.kde.org/network/konqueror/-/merge_requests/113 M +4 -0 src/lib/app/mainapplication.cpp https://invent.kde.org/network/falkon/commit/02feca74ce5497db466a6c547a320a4f23425ac4
Git commit 1ef7a6547a7b871bba83dd700773024412849559 by Antonio Rojas. Committed on 21/03/2022 at 21:38. Pushed by arojas into branch 'release/22.04'. Enable WebRTC screen capturer in WebEngine This is disabled by default, and without it screen sharing doesn't work on Wayland Port of https://invent.kde.org/network/konqueror/-/merge_requests/113 (cherry picked from commit 02feca74ce5497db466a6c547a320a4f23425ac4) M +4 -0 src/lib/app/mainapplication.cpp https://invent.kde.org/network/falkon/commit/1ef7a6547a7b871bba83dd700773024412849559