Enlightenment CVS committal Author : rephorm Project : e17 Module : proto
Dir : e17/proto/e_dbus/src/lib/notification Modified Files: E_Notify.h marshal.c notification.c Log Message: fixes / cleanups =================================================================== RCS file: /cvs/e/e17/proto/e_dbus/src/lib/notification/E_Notify.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- E_Notify.h 11 Jul 2007 00:44:21 -0000 1.2 +++ E_Notify.h 11 Jul 2007 00:45:03 -0000 1.3 @@ -93,7 +93,7 @@ char *app_icon; char *summary; char *body; - unsigned int expire_timeout; + int expire_timeout; Ecore_List *actions; @@ -196,11 +196,12 @@ void e_notification_unref(E_Notification *n); void e_notification_free(E_Notification *n); -E_Notification *e_notification_new2(const char *app_name, - unsigned int replaces_id, - const char *app_icon, const char *summary, - const char *body, - unsigned int expire_timeout); +E_Notification *e_notification_full_new(const char *app_name, + unsigned int replaces_id, + const char *app_icon, + const char *summary, + const char *body, + int expire_timeout); /* notification mutators */ void e_notification_app_name_set(E_Notification *n, const char *app_name); @@ -250,5 +251,6 @@ void e_notification_view_close(E_Notification_View *nv); Evas_Object * e_notification_view_icon_get(Evas *evas, E_Notification *n); +void e_notification_send(E_Notification_Context *ctx, E_Notification *n, E_DBus_Callback_Func func, void *data); #endif =================================================================== RCS file: /cvs/e/e17/proto/e_dbus/src/lib/notification/marshal.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- marshal.c 11 Jul 2007 00:44:21 -0000 1.1 +++ marshal.c 11 Jul 2007 00:45:03 -0000 1.2 @@ -104,7 +104,7 @@ while(dbus_message_iter_has_next(&arr)) { const char *str; - dbus_message_get_basic(&arr, &str); + dbus_message_iter_get_basic(&arr, &str); ecore_list_append(strings, strdup(str)); //XXX use ecore_string_instance? dbus_message_iter_next(&arr); } @@ -313,7 +313,6 @@ marshal_dict_string(&sub, "desktop_entry", n->hints.desktop); if (n->hints.image_data) marshal_dict_variant(&sub, "image_data", "(iiibiiay)", E_DBUS_VARIANT_MARSHALLER(marshal_hint_image), n->hints.image_data); - //marshal_hint_image(&sub, "image_data", n->hints.image_data); if (n->hints.sound_file) marshal_dict_string(&sub, "sound_file", n->hints.sound_file); if (n->hints.suppress_sound) /* we only need to send this if its true */ @@ -325,6 +324,7 @@ } dbus_message_iter_close_container(&iter, &sub); + dbus_message_iter_append_basic(&iter, DBUS_TYPE_INT32, &(n->expire_timeout)); return msg; } @@ -343,7 +343,7 @@ dbus_message_iter_init(msg, &iter); dbus_message_iter_get_basic(&iter, &s_val); - e_notification_name_set(n, s_val); + e_notification_app_name_set(n, s_val); dbus_message_iter_next(&iter); dbus_message_iter_get_basic(&iter, &u_val); @@ -369,7 +369,7 @@ dbus_message_iter_next(&iter); dbus_message_iter_get_basic(&iter, &i_val); - e_notification_expire_timeout_set(n, i_val); + e_notification_timeout_set(n, i_val); return n; } @@ -379,7 +379,7 @@ { DBusMessage *msg; msg = dbus_message_new_method_return(method_call); - dbus_message_get_append_args(msg, DBUS_TYPE_UINT32, ¬ification_id, DBUS_TYPE_INVALID); + dbus_message_append_args(msg, DBUS_TYPE_UINT32, ¬ification_id, DBUS_TYPE_INVALID); return msg; } @@ -404,7 +404,7 @@ { DBusMessageIter arr; const char *id, *name; - dbus_message_recurse(iter, &arr); + dbus_message_iter_recurse(iter, &arr); while (dbus_message_iter_has_next(&arr)) { dbus_message_iter_get_basic(&arr, &id); @@ -422,7 +422,7 @@ const char *key; int x_set = 0, y_set = 0; int x, y; - dbus_message_recurse(iter, &arr); + dbus_message_iter_recurse(iter, &arr); while (dbus_message_iter_has_next(&arr)) { DBusMessageIter dict; @@ -437,7 +437,7 @@ dbus_message_iter_get_basic(&dict, &key); dbus_message_iter_next(&dict); - dbus_message_recurse(&dict, &variant); + dbus_message_iter_recurse(&dict, &variant); switch(dbus_message_iter_get_element_type(&variant)) { case DBUS_TYPE_STRING: @@ -460,7 +460,7 @@ else if (!strcmp(key, "category")) e_notification_hint_category_set(n, s_val); else if (!strcmp(key, "desktop-entry")) - e_notification_hint_desktop_entry_set(n, s_val); + e_notification_hint_desktop_set(n, s_val); else if (!strcmp(key, "sound-file")) e_notification_hint_sound_file_set(n, s_val); else if (!strcmp(key, "suppress-sound")) @@ -514,8 +514,13 @@ int array_len; E_Notification_Image *img; char *sig; + int sig_matches; + + sig = dbus_message_iter_get_signature(iter); + sig_matches = strcmp(sig, "(iiibiiay)"); + dbus_free(sig); + if (!sig_matches) return NULL; - if (!dbus_message_iter_has_signature(iter, "(iiibiiay)")) return NULL; img = e_notification_image_new(); if (!img) return NULL; @@ -549,7 +554,14 @@ { E_DBus_Callback *cb; E_Notification_Return_Notify *ret; + + if (dbus_error_is_set(err)) + { + fprintf (stderr, "an error occurred: %s\n", err->message); + return; + } cb = data; + if (!cb) return; ret = unmarshal_notify_return(msg); e_dbus_callback_call(cb, ret); } @@ -562,6 +574,7 @@ cb = e_dbus_callback_new(func, data); msg = marshal_notify(n); + printf("msg: %p\n", msg); e_dbus_message_send(ctx->conn, msg, cb_notify, -1, cb); } @@ -570,7 +583,13 @@ { E_DBus_Callback *cb; E_Notification_Return_Get_Capabilities *ret; + if (dbus_error_is_set(err)) + { + fprintf (stderr, "an error occurred: %s\n", err->message); + return; + } cb = data; + if (!cb) return; ret = unmarshal_get_capabilities_return(msg); e_dbus_callback_call(cb, ret); } @@ -591,6 +610,11 @@ { E_DBus_Callback *cb; E_Notification_Return_Get_Server_Information *ret; + if (dbus_error_is_set(err)) + { + fprintf (stderr, "an error occurred: %s\n", err->message); + return; + } cb = data; ret = unmarshal_get_server_information_return(msg); e_dbus_callback_call(cb, ret); @@ -620,6 +644,6 @@ e_notification_signal_action_invoked(E_Notification_Daemon *daemon, unsigned int notification_id, const char *action_id) { e_dbus_message_send(daemon->conn, - marshal_notification_action_invoked_signal(notification_id, action_id), + marshal_action_invoked_signal(notification_id, action_id), NULL, -1, NULL); } =================================================================== RCS file: /cvs/e/e17/proto/e_dbus/src/lib/notification/notification.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- notification.c 11 Jul 2007 00:44:21 -0000 1.2 +++ notification.c 11 Jul 2007 00:45:03 -0000 1.3 @@ -12,7 +12,7 @@ /* (con|de)structor */ E_Notification * -e_notification_full_new(const char *app_name, unsigned int replaces_id, const char *app_icon, const char *summary, const char *body, unsigned int expire_timeout) +e_notification_full_new(const char *app_name, unsigned int replaces_id, const char *app_icon, const char *summary, const char *body, int expire_timeout) { E_Notification *n; @@ -24,6 +24,7 @@ if (app_icon) n->app_icon = strdup(app_icon); if (summary) n->summary = strdup(summary); if (body) n->body = strdup(body); + n->expire_timeout = expire_timeout; return n; ------------------------------------------------------------------------- This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs