106 lines
4.7 KiB
Diff
106 lines
4.7 KiB
Diff
diff -U0 libnotify-0.4.4/ChangeLog.closed-reason libnotify-0.4.4/ChangeLog
|
|
--- libnotify-0.4.4/ChangeLog.closed-reason 2007-02-28 05:11:47.000000000 +0000
|
|
+++ libnotify-0.4.4/ChangeLog 2008-08-14 15:35:07.000000000 +0100
|
|
@@ -0,0 +1,10 @@
|
|
+Tue Mar 18 21:51:32 PDT 2008 Christian Hammond <chipx86@chipx86.com>
|
|
+
|
|
+ * libnotify/notification.c:
|
|
+ * libnotify/notification.h:
|
|
+ * libnotify/notify.c:
|
|
+ * libnotify/notify-marshal.list:
|
|
+ * NEWS:
|
|
+ - Add support for sending the closed reason in the signal handler.
|
|
+ Closes ticket #139.
|
|
+
|
|
diff -up libnotify-0.4.4/libnotify/notification.c.closed-reason libnotify-0.4.4/libnotify/notification.c
|
|
--- libnotify-0.4.4/libnotify/notification.c.closed-reason 2008-08-14 15:34:40.000000000 +0100
|
|
+++ libnotify-0.4.4/libnotify/notification.c 2008-08-14 15:35:07.000000000 +0100
|
|
@@ -47,7 +47,7 @@
|
|
static void notify_notification_class_init(NotifyNotificationClass *klass);
|
|
static void notify_notification_init(NotifyNotification *sp);
|
|
static void notify_notification_finalize(GObject *object);
|
|
-static void _close_signal_handler(DBusGProxy *proxy, guint32 id,
|
|
+static void _close_signal_handler(DBusGProxy *proxy, guint32 id, guint32 reason,
|
|
NotifyNotification *notification);
|
|
|
|
static void _action_signal_handler(DBusGProxy *proxy, guint32 id,
|
|
@@ -155,7 +155,7 @@ notify_notification_class_init(NotifyNot
|
|
G_SIGNAL_RUN_FIRST,
|
|
G_STRUCT_OFFSET(NotifyNotificationClass, closed),
|
|
NULL, NULL,
|
|
- g_cclosure_marshal_VOID__VOID, G_TYPE_NONE, 0);
|
|
+ g_cclosure_marshal_VOID__UINT, G_TYPE_NONE, 1, G_TYPE_INT);
|
|
|
|
g_object_class_install_property(object_class, PROP_SUMMARY,
|
|
g_param_spec_string("summary", "Summary",
|
|
@@ -678,13 +678,13 @@ notify_notification_set_geometry_hints(N
|
|
}
|
|
|
|
static void
|
|
-_close_signal_handler(DBusGProxy *proxy, guint32 id,
|
|
+_close_signal_handler(DBusGProxy *proxy, guint32 id, guint32 reason,
|
|
NotifyNotification *notification)
|
|
{
|
|
if (id == notification->priv->id)
|
|
{
|
|
g_object_ref(G_OBJECT(notification));
|
|
- g_signal_emit(notification, signals[SIGNAL_CLOSED], 0);
|
|
+ g_signal_emit(notification, signals[SIGNAL_CLOSED], 0, reason);
|
|
notification->priv->id = 0;
|
|
g_object_unref(G_OBJECT(notification));
|
|
}
|
|
diff -up libnotify-0.4.4/libnotify/notification.h.closed-reason libnotify-0.4.4/libnotify/notification.h
|
|
--- libnotify-0.4.4/libnotify/notification.h.closed-reason 2008-08-14 15:34:40.000000000 +0100
|
|
+++ libnotify-0.4.4/libnotify/notification.h 2008-08-14 15:35:07.000000000 +0100
|
|
@@ -63,7 +63,7 @@ struct _NotifyNotificationClass
|
|
GObjectClass parent_class;
|
|
|
|
/* Signals */
|
|
- void (*closed)(NotifyNotification *notification);
|
|
+ void (*closed)(NotifyNotification *notification, gint reason);
|
|
};
|
|
|
|
/*
|
|
diff -up libnotify-0.4.4/libnotify/notify.c.closed-reason libnotify-0.4.4/libnotify/notify.c
|
|
--- libnotify-0.4.4/libnotify/notify.c.closed-reason 2007-02-15 10:28:46.000000000 +0000
|
|
+++ libnotify-0.4.4/libnotify/notify.c 2008-08-14 15:35:07.000000000 +0100
|
|
@@ -72,13 +72,19 @@ notify_init(const char *app_name)
|
|
NOTIFY_DBUS_CORE_INTERFACE);
|
|
dbus_g_connection_unref(bus);
|
|
|
|
+ dbus_g_object_register_marshaller(notify_marshal_VOID__UINT_UINT,
|
|
+ G_TYPE_NONE,
|
|
+ G_TYPE_UINT,
|
|
+ G_TYPE_UINT, G_TYPE_INVALID);
|
|
+
|
|
dbus_g_object_register_marshaller(notify_marshal_VOID__UINT_STRING,
|
|
G_TYPE_NONE,
|
|
G_TYPE_UINT,
|
|
G_TYPE_STRING, G_TYPE_INVALID);
|
|
|
|
dbus_g_proxy_add_signal(_proxy, "NotificationClosed",
|
|
- G_TYPE_UINT, G_TYPE_INVALID);
|
|
+ G_TYPE_UINT, G_TYPE_UINT,
|
|
+ G_TYPE_INVALID);
|
|
dbus_g_proxy_add_signal(_proxy, "ActionInvoked",
|
|
G_TYPE_UINT, G_TYPE_STRING,
|
|
G_TYPE_INVALID);
|
|
diff -up libnotify-0.4.4/libnotify/notify-marshal.list.closed-reason libnotify-0.4.4/libnotify/notify-marshal.list
|
|
--- libnotify-0.4.4/libnotify/notify-marshal.list.closed-reason 2006-01-11 07:49:04.000000000 +0000
|
|
+++ libnotify-0.4.4/libnotify/notify-marshal.list 2008-08-14 15:35:07.000000000 +0100
|
|
@@ -1 +1,2 @@
|
|
+VOID:UINT,UINT
|
|
VOID:UINT,STRING
|
|
diff -up libnotify-0.4.4/NEWS.closed-reason libnotify-0.4.4/NEWS
|
|
--- libnotify-0.4.4/NEWS.closed-reason 2007-02-28 05:07:27.000000000 +0000
|
|
+++ libnotify-0.4.4/NEWS 2008-08-14 15:35:07.000000000 +0100
|
|
@@ -1,6 +1,8 @@
|
|
version 0.4.4 (27-February-2007):
|
|
* Fixed a bug where a notification's ID could be reset when a different
|
|
notification was closed. Patch by jylefort. (Bug #94)
|
|
+ * Added support for sending the closed reason in the "closed" signal
|
|
+ handler. (Ticket #139)
|
|
* Fixed a crash when the D-BUS proxy was not being freed on notify_uninit,
|
|
which was problematic when used in a loadable module. (Bug #92)
|
|
* Fixed a crash when a signal handler for the notification's closed signal
|