04 February, 2008

xchat-gnome : sound notification

Upon quiting totem i heard a ping. This is from xchat-gnome ( from sound-notification plugin ). Seems that gnome_sound_play is being used to play the sound, which defaults to esd backend !!!

gnome_sound_play ("../../data/message.wav");

ESD has been superceeded by pulseaudio in most major distribution. I would prefer if we moved to a gstreamer based backend. I did end up re-writting the code to use gstreamer. The ping still did not work when i was playing music via totem.

Digging this further up, it turns out GStreamer support multiple profile for "audiosinks" and gstreamer-properties can only configure the default "audiosink". Grrrrr ! Ended up configuring all "audiosink" to "pulseaudio".

Abra ca daba ! magic with gstreamer. Ping now works as expected and on time.

reference bug : gnome bug #401829 – gstreamer-properties change all types of sinks (musicaudiosink) when changing audiosink

xchat-gnome : unchecking "Mark as away" does not work

Ticking away worked like a charm on xchat-gnome, but unticking does not do any magic.

This Turns out to be a bug fixed upstream ( gnome #462031 ). "grepping" the code reveals a rather trivial fix, and on further lookup a part of Fedora9 build. I ended up filing a bug-report ( fedora #430883 ).

A package was released with the stated fix, which crashes xchat-gnome when one tries to set/unset away.

$ xchat-gnome
(xchat-gnome:9519): GLib-GObject-WARNING **: invalid uninstantiatable type
`(null)' in cast to `GtkToggleButton'
(xchat-gnome:9519): Gtk-CRITICAL **: gtk_toggle_button_get_active: assertion `GTK_IS_TOGGLE_BUTTON (toggle_button)' failed

On lookup, turn out to be issue with variable naming. Baaad mojo.
gboolean away = gtk_toggle_button_get_active (GTK_TOGGLE_BUTTON(away));
Went head, cleaned up the patch and submitted the same. Now, i live in Peace.