summaryrefslogtreecommitdiff
path: root/copy-n-paste/eggsmclient-xsmp.c
diff options
context:
space:
mode:
Diffstat (limited to 'copy-n-paste/eggsmclient-xsmp.c')
-rw-r--r--copy-n-paste/eggsmclient-xsmp.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/copy-n-paste/eggsmclient-xsmp.c b/copy-n-paste/eggsmclient-xsmp.c
index c72839c..8c6ba4d 100644
--- a/copy-n-paste/eggsmclient-xsmp.c
+++ b/copy-n-paste/eggsmclient-xsmp.c
@@ -36,6 +36,9 @@
#include <X11/SM/SMlib.h>
#include <gdk/gdk.h>
+#if GLIB_CHECK_VERSION (2, 24, 0)
+#include <gdk/gdkx.h>
+#endif
#define EGG_TYPE_SM_CLIENT_XSMP (egg_sm_client_xsmp_get_type ())
#define EGG_SM_CLIENT_XSMP(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), EGG_TYPE_SM_CLIENT_XSMP, EggSMClientXSMP))
@@ -367,7 +370,11 @@ sm_client_xsmp_startup (EggSMClient *client,
free (ret_client_id);
gdk_threads_enter ();
+#if GLIB_CHECK_VERSION (2, 24, 0)
+ gdk_x11_set_sm_client_id (xsmp->client_id);
+#else
gdk_set_sm_client_id (xsmp->client_id);
+#endif
gdk_threads_leave ();
g_debug ("Got client ID \"%s\"", xsmp->client_id);