diff --git a/meta-xfce/classes/thunar-plugin.bbclass b/meta-xfce/classes/thunar-plugin.bbclass
index 82a1be6347..f38996d26e 100644
--- a/meta-xfce/classes/thunar-plugin.bbclass
+++ b/meta-xfce/classes/thunar-plugin.bbclass
@@ -1,6 +1,4 @@
-inherit xfce features_check
-
-REQUIRED_DISTRO_FEATURES = "x11"
+inherit xfce
 
 DEPENDS += "thunar"
 
diff --git a/meta-xfce/recipes-thunar-plugins/shares/thunar-shares-plugin_0.5.0.bb b/meta-xfce/recipes-thunar-plugins/shares/thunar-shares-plugin_0.5.0.bb
index b8a18c2f51..b270ad0838 100644
--- a/meta-xfce/recipes-thunar-plugins/shares/thunar-shares-plugin_0.5.0.bb
+++ b/meta-xfce/recipes-thunar-plugins/shares/thunar-shares-plugin_0.5.0.bb
@@ -5,7 +5,8 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=59530bdf33659b29e73d4adb9f9f6552"
 
 inherit thunar-plugin features_check
 
-REQUIRED_DISTRO_FEATURES = "pam x11"
+ANY_OF_DISTRO_FEATURES = "${GTK3DISTROFEATURES}"
+REQUIRED_DISTRO_FEATURES = "pam"
 
 SRC_URI[sha256sum] = "34d4d69d413e63837c5083506b4dbf65f1fd2efe17667b1d7ad0699e1e2eb07d"
 
diff --git a/meta-xfce/recipes-xfce/thunar/files/0001-Properly-guard-gdkx.h-include.patch b/meta-xfce/recipes-xfce/thunar/files/0001-Properly-guard-gdkx.h-include.patch
new file mode 100644
index 0000000000..9d4afc7167
--- /dev/null
+++ b/meta-xfce/recipes-xfce/thunar/files/0001-Properly-guard-gdkx.h-include.patch
@@ -0,0 +1,37 @@
+From dd7fbf4540891053a4083228aac2485e6c469199 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Ga=C3=ABl=20Bonithon?= <gael@xfce.org>
+Date: Sat, 11 Apr 2026 18:07:05 +0200
+Subject: [PATCH] Properly guard gdkx.h include
+
+Fixes: #1820
+
+Upstream-Status: Backport [https://gitlab.xfce.org/xfce/thunar/-/commit/201f8ca0c3bc7b5e651201526fc3006a130718eb]
+
+Signed-off-by: Changqing Li <changqing.li@windriver.com>
+---
+ thunar/thunar-session-client.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/thunar/thunar-session-client.c b/thunar/thunar-session-client.c
+index c36719c..2832818 100644
+--- a/thunar/thunar-session-client.c
++++ b/thunar/thunar-session-client.c
+@@ -30,6 +30,7 @@
+ 
+ #ifdef ENABLE_LIBSM
+ #include <X11/SM/SMlib.h>
++#include <gdk/gdkx.h>
+ #endif
+ 
+ #include "thunar/thunar-application.h"
+@@ -38,7 +39,6 @@
+ #include "thunar/thunar-private.h"
+ #include "thunar/thunar-session-client.h"
+ 
+-#include <gdk/gdkx.h>
+ #include <glib/gstdio.h>
+ 
+ 
+-- 
+2.34.1
+
diff --git a/meta-xfce/recipes-xfce/thunar/thunar_4.21.5.bb b/meta-xfce/recipes-xfce/thunar/thunar_4.21.5.bb
index 32d4c39aa5..d8e9edfc25 100644
--- a/meta-xfce/recipes-xfce/thunar/thunar_4.21.5.bb
+++ b/meta-xfce/recipes-xfce/thunar/thunar_4.21.5.bb
@@ -9,15 +9,15 @@ XFCE_COMPRESS_TYPE = "xz"
 XFCEBASEBUILDCLASS = "meson"
 GTKDOC_MESON_OPTION = "gtk-doc"
 
-inherit xfce gobject-introspection features_check mime-xdg perlnative gtk-doc
-
-REQUIRED_DISTRO_FEATURES = "x11"
+inherit xfce gobject-introspection mime-xdg perlnative gtk-doc
 
 SRC_URI[sha256sum] = "eddbd4bab29c73718734e0bfcf650ceea8b4fcc8cb2cbb0b24fe22b286a2be00"
 
+SRC_URI += "file://0001-Properly-guard-gdkx.h-include.patch"
+
 PACKAGECONFIG ??= "${@bb.utils.filter('DISTRO_FEATURES', 'x11', d)}"
 PACKAGECONFIG[pcre] = "-Dpcre2=enabled,-Dpcre2=disabled,libpcre2"
-PACKAGECONFIG[x11] = "-Dx11=enabled -Dsession-management=enabled,-Dx11=disabled,libsm startup-notification"
+PACKAGECONFIG[x11] = "-Dx11=enabled -Dsession-management=enabled,-Dx11=disabled,libsm startup-notification virtual/libx11"
 
 FILES:${PN} += " \
     ${libdir}/thunarx-3/* \
