From 57bca70eecd0459d03723d4ecfaffccda58a29b1 Mon Sep 17 00:00:00 2001 From: Aleksandar Kurtakov Date: Tue, 13 May 2025 22:28:21 +0300 Subject: [PATCH] [GTK4] Stop Shell.bringToTop from crashing on Gtk 4.x Fetch GdkDisplay from GdkSurface as done on Wayland --- .../Eclipse SWT/gtk/org/eclipse/swt/widgets/Shell.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Shell.java b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Shell.java index 3ffcf7adb34..562df39c90e 100644 --- a/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Shell.java +++ b/bundles/org.eclipse.swt/Eclipse SWT/gtk/org/eclipse/swt/widgets/Shell.java @@ -609,7 +609,12 @@ void bringToTop (boolean force) { } if ((xFocus || (style & SWT.ON_TOP) != 0)) { if (OS.isX11()) { - long gdkDisplay = GDK.gdk_window_get_display(gdkResource); + long gdkDisplay; + if (GTK.GTK4) { + gdkDisplay = GDK.gdk_surface_get_display(gdkResource); + } else { + gdkDisplay = GDK.gdk_window_get_display(gdkResource); + } long xDisplay = GDK.gdk_x11_display_get_xdisplay(gdkDisplay); long xWindow; if (GTK.GTK4) {