Bug 450839

Summary: Screen sharing needs additional chromium options
Product: [Applications] Falkon Reporter: Antonio Rojas <arojas>
Component: generalAssignee: David Rosca <nowrep>
Status: RESOLVED FIXED    
Severity: normal CC: jurajoravec
Priority: NOR    
Version First Reported In: 3.2.0   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Antonio Rojas 2022-02-25 20:13:28 UTC
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)
Comment 1 Bug Janitor Service 2022-03-20 13:10:45 UTC
A possibly relevant merge request was started @ https://invent.kde.org/network/falkon/-/merge_requests/34
Comment 2 Antonio Rojas 2022-03-20 21:13:01 UTC
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
Comment 3 Antonio Rojas 2022-03-21 21:38:48 UTC
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