[empathy: 13/14] Build with latest NST when using GTK3 and port to new API (#623199)



commit 6b1d4251dc32cf7c75871002a1f8163af9775f65
Author: Guillaume Desmottes <guillaume desmottes collabora co uk>
Date:   Thu Jul 8 11:32:20 2010 +0200

    Build with latest NST when using GTK3 and port to new API (#623199)

 configure.ac                                     |   16 ++++++++++++----
 nautilus-sendto-plugin/empathy-nautilus-sendto.c |   17 +++++++++++++++++
 2 files changed, 29 insertions(+), 4 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index 2426c2f..7e71bd9 100644
--- a/configure.ac
+++ b/configure.ac
@@ -50,6 +50,7 @@ ISO_CODES_REQUIRED=0.35
 LIBCHAMPLAIN_GTK_REQUIRED=0.4
 LIBCHAMPLAIN_REQUIRED=0.4
 NAUTILUS_SENDTO_REQUIRED=2.28.1
+NAUTILUS_SENDTO_REQUIRED_GTK3=2.90.0
 NETWORK_MANAGER_REQUIRED=0.7.0
 WEBKIT_REQUIRED=1.1.15
 
@@ -445,10 +446,17 @@ AC_ARG_ENABLE(nautilus-sendto,
                              enable_nautilus_sendto=auto)
 
 if test "x$enable_nautilus_sendto" != "xno"; then
-   PKG_CHECK_MODULES(NST,
-   [
-      nautilus-sendto >= $NAUTILUS_SENDTO_REQUIRED
-   ], have_nst="yes", have_nst="no")
+   if test "x$enable_gtk3" == "xno"; then
+      # Newer NST requires GTK+3 so we can't use it
+      PKG_CHECK_MODULES(NST,[nautilus-sendto >= $NAUTILUS_SENDTO_REQUIRED
+          nautilus-sendto < 2.90.0],
+          have_nst="yes", have_nst="no")
+
+      AC_DEFINE(HAVE_OLD_NST, [], [Legacy compat mode with old nautilus-sendto] )
+   else
+      PKG_CHECK_MODULES(NST,[nautilus-sendto >= $NAUTILUS_SENDTO_REQUIRED_GTK3],
+          have_nst="yes", have_nst="no")
+   fi
 else
    have_nst=no
 fi
diff --git a/nautilus-sendto-plugin/empathy-nautilus-sendto.c b/nautilus-sendto-plugin/empathy-nautilus-sendto.c
index 503e518..346624a 100644
--- a/nautilus-sendto-plugin/empathy-nautilus-sendto.c
+++ b/nautilus-sendto-plugin/empathy-nautilus-sendto.c
@@ -235,6 +235,8 @@ destroy (NstPlugin *plugin)
   return TRUE;
 }
 
+/* Legacy from old versions (< 2.90.0) */
+#ifdef HAVE_OLD_NST
 static
 NstPluginInfo plugin_info = {
   "im",
@@ -249,6 +251,21 @@ NstPluginInfo plugin_info = {
   send_files,
   destroy
 };
+#else
+static
+NstPluginInfo plugin_info = {
+  "im",
+  "empathy",
+  N_("Instant Message (Empathy)"),
+  GETTEXT_PACKAGE,
+  NAUTILUS_CAPS_NONE,
+  init,
+  get_contacts_widget,
+  validate_destination,
+  send_files,
+  destroy
+};
+#endif
 
 NST_INIT_PLUGIN (plugin_info)
 



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