Upstream commit: https://webrtc.googlesource.com/src/+/4e3c057bedc15913c832750c3ee0fbf1f5b32450 Wayland screencast: use PipeWire built from sources This allows us to use newer APIs without needing to redefine missing bits because of the outdated PipeWire available in the sysroot. Also switch from using PipeWire from pre-built CIPD package and build our own from sources. Bug: chromium:493637569 Change-Id: Iae4ff3c60a5657cb5fc5a13a61d45a6fd7403d8d Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/457920 Reviewed-by: Alexander Cooper <alcooper@chromium.org> Commit-Queue: Jan Grulich <grulja@gmail.com> Reviewed-by: Jeremy Leconte <jleconte@google.com> Cr-Commit-Position: refs/heads/main@{#48250}
57 lines
1.8 KiB
Diff
57 lines
1.8 KiB
Diff
From: Michael Froman <mfroman@mozilla.com>
|
|
Date: Thu, 28 Sep 2023 14:12:00 +0000
|
|
Subject: Bug 1832465 - remove libXtst usage from libwebrtc.
|
|
r=ng,webrtc-reviewers
|
|
|
|
Differential Revision: https://phabricator.services.mozilla.com/D189386
|
|
Mercurial Revision: https://hg.mozilla.org/mozilla-central/rev/0ec1b33b95dbb2d39355f28b2812fe25b4ad9f20
|
|
---
|
|
modules/desktop_capture/BUILD.gn | 3 +++
|
|
modules/desktop_capture/linux/x11/shared_x_display.cc | 4 ++++
|
|
2 files changed, 7 insertions(+)
|
|
|
|
diff --git a/modules/desktop_capture/BUILD.gn b/modules/desktop_capture/BUILD.gn
|
|
index f38ba5a5c7..f91d8556a5 100644
|
|
--- a/modules/desktop_capture/BUILD.gn
|
|
+++ b/modules/desktop_capture/BUILD.gn
|
|
@@ -708,6 +708,9 @@ rtc_library("desktop_capture") {
|
|
"Xrender",
|
|
"Xtst",
|
|
]
|
|
+ if (build_with_mozilla) {
|
|
+ libs -= [ "Xtst" ]
|
|
+ }
|
|
}
|
|
|
|
if (!is_win && !is_mac && !rtc_use_x11_extensions && !rtc_use_pipewire &&
|
|
diff --git a/modules/desktop_capture/linux/x11/shared_x_display.cc b/modules/desktop_capture/linux/x11/shared_x_display.cc
|
|
index 3cb2636f09..f7eca06820 100644
|
|
--- a/modules/desktop_capture/linux/x11/shared_x_display.cc
|
|
+++ b/modules/desktop_capture/linux/x11/shared_x_display.cc
|
|
@@ -11,7 +11,9 @@
|
|
#include "modules/desktop_capture/linux/x11/shared_x_display.h"
|
|
|
|
#include <X11/Xlib.h>
|
|
+#if !defined(WEBRTC_MOZILLA_BUILD)
|
|
#include <X11/extensions/XTest.h>
|
|
+#endif
|
|
|
|
#include <algorithm>
|
|
#include <cstddef>
|
|
@@ -98,6 +100,7 @@ void SharedXDisplay::ProcessPendingXEvents() {
|
|
}
|
|
|
|
void SharedXDisplay::IgnoreXServerGrabs() {
|
|
+#if !defined(WEBRTC_MOZILLA_BUILD)
|
|
int test_event_base = 0;
|
|
int test_error_base = 0;
|
|
int major = 0;
|
|
@@ -106,6 +109,7 @@ void SharedXDisplay::IgnoreXServerGrabs() {
|
|
&minor)) {
|
|
XTestGrabControl(display(), true);
|
|
}
|
|
+#endif
|
|
}
|
|
|
|
} // namespace webrtc
|