[maemo-commits] [maemo-commits] r12451 - in projects/haf/trunk/hildon-desktop: . src
From: subversion at stage.maemo.org subversion at stage.maemo.orgDate: Mon Jun 25 17:22:04 EEST 2007
- Previous message: [maemo-commits] r12450 - projects/haf/branches/maemo-af-desktop/hildon-desktop_init_script/debian
- Next message: [maemo-commits] r12452 - projects/haf/trunk/hildon-desktop/src
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Author: lucasr Date: 2007-06-25 17:21:50 +0300 (Mon, 25 Jun 2007) New Revision: 12451 Modified: projects/haf/trunk/hildon-desktop/ChangeLog projects/haf/trunk/hildon-desktop/src/hd-switcher-menu.c Log: 2007-06-25 Lucas Rocha <lucas.rocha at nokia.com> * src/hd-switcher-menu.c: added support for sound hint on notifications. Modified: projects/haf/trunk/hildon-desktop/ChangeLog =================================================================== --- projects/haf/trunk/hildon-desktop/ChangeLog 2007-06-25 14:21:15 UTC (rev 12450) +++ projects/haf/trunk/hildon-desktop/ChangeLog 2007-06-25 14:21:50 UTC (rev 12451) @@ -1,3 +1,8 @@ +2007-06-25 Lucas Rocha <lucas.rocha at nokia.com> + + * src/hd-switcher-menu.c: added support for sound hint on + notifications. + 2007-06-25 Johan Bilien <johan.bilien at nokia.com> * background-manager/{background-manager.[ch], Modified: projects/haf/trunk/hildon-desktop/src/hd-switcher-menu.c =================================================================== --- projects/haf/trunk/hildon-desktop/src/hd-switcher-menu.c 2007-06-25 14:21:15 UTC (rev 12450) +++ projects/haf/trunk/hildon-desktop/src/hd-switcher-menu.c 2007-06-25 14:21:50 UTC (rev 12451) @@ -29,6 +29,7 @@ /* Hildon includes */ #include "hd-switcher-menu.h" #include "hd-switcher-menu-item.h" +#include "hn-app-sound.h" #include "hn-app-pixbuf-anim-blinker.h" #include <gdk/gdkx.h> @@ -126,6 +127,8 @@ GtkWidget *window_dialog; GtkWidget *toggle_button; + + gint esd_socket; }; static GObject *hd_switcher_menu_constructor (GType gtype, @@ -210,6 +213,8 @@ switcher->priv->icon_theme = gtk_icon_theme_get_default (); g_object_ref (switcher->hdwm); + + switcher->priv->esd_socket = hn_as_sound_init (); } static void @@ -693,7 +698,9 @@ gtk_widget_destroy (switcher->priv->window_dialog); g_object_unref (switcher->priv->icon_theme); - + + hn_as_sound_deinit (switcher->priv->esd_socket); + G_OBJECT_CLASS (hd_switcher_menu_parent_class)->finalize (object); } @@ -1446,7 +1453,7 @@ { GdkPixbuf *icon = NULL; gchar *summary = NULL, *body = NULL; - const gchar *category = NULL; + const gchar *category = NULL, *sound_file = NULL; GHashTable *hints; GList *children; GValue *hint; @@ -1478,6 +1485,34 @@ if (g_str_has_prefix (category, "system.note")) goto out; } + + hint = g_hash_table_lookup (hints, "sound-file"); + + if (hint) + { + gint sample_id; + + g_debug ("PLAYING SOUND!"); + + sound_file = g_value_get_string (hint); + + sample_id = hn_as_sound_register_sample (switcher->priv->esd_socket, + sound_file); + + if (hn_as_sound_play_sample (switcher->priv->esd_socket, + sample_id) == -1) + { + hn_as_sound_deinit (switcher->priv->esd_socket); + + switcher->priv->esd_socket = hn_as_sound_init (); + + hn_as_sound_play_sample (switcher->priv->esd_socket, + sample_id); + } + + hn_as_sound_deregister_sample (switcher->priv->esd_socket, + sample_id); + } if (switcher->priv->last_iter_added == NULL) hd_switcher_menu_notification_deleted_cb
- Previous message: [maemo-commits] r12450 - projects/haf/branches/maemo-af-desktop/hildon-desktop_init_script/debian
- Next message: [maemo-commits] r12452 - projects/haf/trunk/hildon-desktop/src
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]