chiark / gitweb /
gnome-ask-password-agent: also support libnotify < 0.7 for now
authorKay Sievers <kay.sievers@vrfy.org>
Fri, 26 Nov 2010 16:59:53 +0000 (17:59 +0100)
committerKay Sievers <kay.sievers@vrfy.org>
Fri, 26 Nov 2010 16:59:53 +0000 (17:59 +0100)
Makefile.am
configure.ac
src/gnome-ask-password-agent.vala

index 471954bf684ffcfc4950a9a7f918e42db2b850b1..baf82714b4771abac966b60a830a227db36773ea 100644 (file)
@@ -962,7 +962,12 @@ systemd_gnome_ask_password_agent_VALAFLAGS = \
        --pkg=gtk+-2.0 \
        --pkg=linux \
        --pkg=gio-unix-2.0 \
-       --pkg=libnotify \
+       --pkg=libnotify
+if LIBNOTIFY07
+systemd_gnome_ask_password_agent_VALAFLAGS += \
+       -D LIBNOTIFY07
+endif
+systemd_gnome_ask_password_agent_VALAFLAGS += \
        -g
 
 systemd_gnome_ask_password_agent_LDADD = \
index 5a6f3c7d6e1cafe7329f3a1b02e667511dfa45b2..dfbce11ad359648a8dd089a20a420ff6f2f45e88 100644 (file)
@@ -259,12 +259,16 @@ if test "$have_gtk" = "yes"; then
         AC_SUBST(DBUSGLIB_CFLAGS)
         AC_SUBST(DBUSGLIB_LIBS)
 
-        PKG_CHECK_MODULES(LIBNOTIFY, [ libnotify >= 0.7.0 ])
+        PKG_CHECK_MODULES(LIBNOTIFY, [ libnotify >= 0.7.0 ],
+          [ libnotify07=yes ],
+          [ PKG_CHECK_MODULES(LIBNOTIFY, [ libnotify ]) ]
+        )
+        AM_CONDITIONAL(LIBNOTIFY07, [ test "$libnotify07" = "yes" ])
         AC_SUBST(LIBNOTIFY_CFLAGS)
         AC_SUBST(LIBNOTIFY_LIBS)
 fi
 
-AM_PROG_VALAC([0.11])
+AM_PROG_VALAC([0.10])
 AC_SUBST(VAPIDIR)
 AM_CONDITIONAL(HAVE_VALAC, test x"$VALAC" != x)
 
index 6cab6f96a776523b76027f094469848168bbc529..61bbba0f7c8b9077b3163109c7384a2e844609c5 100644 (file)
@@ -38,8 +38,13 @@ public class PasswordDialog : Dialog {
                 set_default_response(ResponseType.OK);
                 set_icon_name(icon);
 
+#if LIBNOTIFY07
                 add_button(Stock.CANCEL, ResponseType.CANCEL);
                 add_button(Stock.OK, ResponseType.OK);
+#else
+                add_button(STOCK_CANCEL, ResponseType.CANCEL);
+                add_button(STOCK_OK, ResponseType.OK);
+#endif
 
                 Container content = (Container) get_content_area();
 
@@ -181,7 +186,12 @@ public class MyStatusIcon : StatusIcon {
 
                 set_visible(true);
 
+#if LIBNOTIFY07
                 Notification n = new Notification(title, message, icon);
+#else
+                Notification n = new Notification(title, message, icon, null);
+                n.attach_to_status_icon(this);
+#endif
                 n.set_timeout(5000);
                 n.show();
 
@@ -225,7 +235,11 @@ public class MyStatusIcon : StatusIcon {
 
                 OutputStream stream = new UnixOutputStream(to_process, true);
 
+#if LIBNOTIFY07
                 stream.write(password.data, null);
+#else
+                stream.write(password, password.length, null);
+#endif
         }
 }