[gnome-panel/gtk3] panel: Update smclient code from libegg



commit 2e0bff49bbe76b037dc5606b578cb166aa7d217c
Author: Vincent Untz <vuntz gnome org>
Date:   Mon Jan 31 14:32:59 2011 +0100

    panel: Update smclient code from libegg

 gnome-panel/libegg/eggdesktopfile.c      |   10 ++++++++++
 gnome-panel/libegg/eggdesktopfile.h      |    3 +++
 gnome-panel/libegg/eggsmclient-private.h |    8 +++++++-
 gnome-panel/libegg/eggsmclient-xsmp.c    |    5 +++++
 4 files changed, 25 insertions(+), 1 deletions(-)
---
diff --git a/gnome-panel/libegg/eggdesktopfile.c b/gnome-panel/libegg/eggdesktopfile.c
index 6f6b946..9b12af5 100644
--- a/gnome-panel/libegg/eggdesktopfile.c
+++ b/gnome-panel/libegg/eggdesktopfile.c
@@ -431,6 +431,16 @@ egg_desktop_file_get_numeric (EggDesktopFile  *desktop_file,
 				error);
 }
 
+int
+egg_desktop_file_get_integer (EggDesktopFile *desktop_file,
+			      const char     *key,
+    			      GError	    **error)
+{
+  return g_key_file_get_integer (desktop_file->key_file,
+				 EGG_DESKTOP_FILE_GROUP, key,
+				 error);
+}
+
 char **
 egg_desktop_file_get_string_list (EggDesktopFile  *desktop_file,
 				  const char      *key,
diff --git a/gnome-panel/libegg/eggdesktopfile.h b/gnome-panel/libegg/eggdesktopfile.h
index 18fe463..16c5426 100644
--- a/gnome-panel/libegg/eggdesktopfile.h
+++ b/gnome-panel/libegg/eggdesktopfile.h
@@ -127,6 +127,9 @@ gboolean  egg_desktop_file_get_boolean            (EggDesktopFile  *desktop_file
 double    egg_desktop_file_get_numeric            (EggDesktopFile  *desktop_file,
 						   const char      *key,
 						   GError         **error);
+int       egg_desktop_file_get_integer            (EggDesktopFile  *desktop_file,
+						   const char      *key,
+						   GError         **error);
 char    **egg_desktop_file_get_string_list        (EggDesktopFile  *desktop_file,
 						   const char      *key,
 						   gsize           *length,
diff --git a/gnome-panel/libegg/eggsmclient-private.h b/gnome-panel/libegg/eggsmclient-private.h
index e391218..0c98eee 100644
--- a/gnome-panel/libegg/eggsmclient-private.h
+++ b/gnome-panel/libegg/eggsmclient-private.h
@@ -20,7 +20,13 @@
 #ifndef __EGG_SM_CLIENT_PRIVATE_H__
 #define __EGG_SM_CLIENT_PRIVATE_H__
 
-#include <gdk/gdk.h>
+#include <gtk/gtk.h>
+
+#if !GTK_CHECK_VERSION(2,91,7) && !GTK_CHECK_VERSION(3,0,0)
+/* GTK+ 3 includes this automatically */
+#include <gdkconfig.h>
+#endif
+
 #include "eggsmclient.h"
 
 G_BEGIN_DECLS
diff --git a/gnome-panel/libegg/eggsmclient-xsmp.c b/gnome-panel/libegg/eggsmclient-xsmp.c
index 948e078..ec1b594 100644
--- a/gnome-panel/libegg/eggsmclient-xsmp.c
+++ b/gnome-panel/libegg/eggsmclient-xsmp.c
@@ -35,6 +35,7 @@
 #include <unistd.h>
 #include <X11/SM/SMlib.h>
 
+#include <gdk/gdk.h>
 #include <gdk/gdkx.h>
 
 #define EGG_TYPE_SM_CLIENT_XSMP            (egg_sm_client_xsmp_get_type ())
@@ -367,7 +368,11 @@ sm_client_xsmp_startup (EggSMClient *client,
       free (ret_client_id);
 
       gdk_threads_enter ();
+#if !GTK_CHECK_VERSION(2,91,7) && !GTK_CHECK_VERSION(3,0,0)
+      gdk_set_sm_client_id (xsmp->client_id);
+#else
       gdk_x11_set_sm_client_id (xsmp->client_id);
+#endif
       gdk_threads_leave ();
 
       g_debug ("Got client ID \"%s\"", xsmp->client_id);



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]