Why do we disable esd in libgnome?

Bastien Nocera bnocera at redhat.com
Tue Feb 3 16:24:58 UTC 2009


On Mon, 2009-02-02 at 17:31 -0800, Dan Nicholson wrote:
<snip>
> That's exactly my point. Since ESD support has been removed in fedora,
> anyone trying to do gnome_sound_connection_get() will just get -1 back
> anyway. Furthermore, the gnome_sound_play() docs say that the sound
> may or may not play. So, why not just make it play a file with
> libcanberra? If it fails, oh well. You're in exactly the same
> situation you're in now. It seems pretty easy to me:
> 
> void gnome_sound_play(const char *filename)
> {
> #ifdef HAVE_LIBCANBERRA_GTK
>     ca_context_play(ca_gtk_context_get(), 0, CA_PROP_MEDIA_FILENAME,
> filename, NULL);
> #endif
> }

It's easy but broken because it's missing all the other properties that
libcanberra can use and give to other applications. For example, we
don't know whether it's a sound event (click/pop/whatever), or a help to
pronunciation in a dictionary.

> I understand not wanting to write new apps to use gnome_sound_play
> since it's deprecated. But it's existing API that can't be removed.
> Why not have it work for apps that haven't been ported yet

Because it's hardly more work to fix the applications themselves.

>  (or can't
> be ported)?

Those were always in trouble.

> > I'd rather spend time answering questions on how to make libcanberra
> > work with your app rather than spending time doing a half-working
> > work-around in libgnome.
> 
> Sure. I would not suggest that new apps use gnome_sound*.

And I don't see how adding a broken work-around to gnome_sound_* would
help us fix the applications properly.

Cheers




More information about the fedora-devel-list mailing list