summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2021-04-21 10:12:39 +0000
committerMatthias Clasen <mclasen@redhat.com>2021-04-21 10:12:39 +0000
commit142984cbf7a78099b518ea18628d70269c978e04 (patch)
treee605af9ad215db59f899c092f28a1dfd605f0389
parent119d0b666c94fc99c218f7b65157baf8ae3f1a3a (diff)
parent5587ee0c30e83e7d47a872d48522672d5625a72f (diff)
downloadgtk+-142984cbf7a78099b518ea18628d70269c978e04.tar.gz
Merge branch 'untrusted-beep' into 'master'
x11: Don't beep on untrusted displays Closes #3862 See merge request GNOME/gtk!3463
-rw-r--r--gdk/x11/gdkdisplay-x11.c3
-rw-r--r--gdk/x11/gdksurface-x11.c3
2 files changed, 6 insertions, 0 deletions
diff --git a/gdk/x11/gdkdisplay-x11.c b/gdk/x11/gdkdisplay-x11.c
index 4350f2eef8..828889e977 100644
--- a/gdk/x11/gdkdisplay-x11.c
+++ b/gdk/x11/gdkdisplay-x11.c
@@ -1795,6 +1795,9 @@ _gdk_x11_display_update_grab_info_ungrab (GdkDisplay *display,
static void
gdk_x11_display_beep (GdkDisplay *display)
{
+ if (!GDK_X11_DISPLAY (display)->trusted_client)
+ return;
+
#ifdef HAVE_XKB
XkbBell (GDK_DISPLAY_XDISPLAY (display), None, 0, None);
#else
diff --git a/gdk/x11/gdksurface-x11.c b/gdk/x11/gdksurface-x11.c
index 210f584d64..aeaca9c0f9 100644
--- a/gdk/x11/gdksurface-x11.c
+++ b/gdk/x11/gdksurface-x11.c
@@ -4542,6 +4542,9 @@ gdk_x11_surface_beep (GdkSurface *surface)
display = GDK_SURFACE_DISPLAY (surface);
+ if (!GDK_X11_DISPLAY (display)->trusted_client)
+ return FALSE;
+
#ifdef HAVE_XKB
if (GDK_X11_DISPLAY (display)->use_xkb)
{