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 b95f1aa2d0..6f18642622 100644
--- a/modules/desktop_capture/BUILD.gn
+++ b/modules/desktop_capture/BUILD.gn
@@ -388,6 +388,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 a5781a5fb3..e4360bd1b3 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>
@@ -100,6 +102,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;
@@ -108,6 +111,7 @@ void SharedXDisplay::IgnoreXServerGrabs() {
                           &minor)) {
     XTestGrabControl(display(), true);
   }
+#endif
 }
 
 }  // namespace webrtc
