diff options
author | Lennart Poettering <lennart@poettering.net> | 2009-06-08 16:58:45 +0200 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2009-06-08 16:58:45 +0200 |
commit | f13bbd576fef8911275c8eed41ef425163b70398 (patch) | |
tree | 5c68bc6ef12e4374eccdf98aeffd7d60dab7612a /src/pulsecore/sink.c | |
parent | 12d53826f692f5dac60a5026521cffb5c5fb7b85 (diff) |
prop: introduce new PA_PROP_DEVICE_INTENDED_ROLES property
Diffstat (limited to 'src/pulsecore/sink.c')
-rw-r--r-- | src/pulsecore/sink.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/pulsecore/sink.c b/src/pulsecore/sink.c index 13f0e11e..1da094af 100644 --- a/src/pulsecore/sink.c +++ b/src/pulsecore/sink.c @@ -177,6 +177,7 @@ pa_sink* pa_sink_new( pa_device_init_description(data->proplist); pa_device_init_icon(data->proplist, TRUE); + pa_device_init_intended_roles(data->proplist); if (pa_hook_fire(&core->hooks[PA_CORE_HOOK_SINK_FIXATE], data) < 0) { pa_xfree(s); @@ -2287,3 +2288,19 @@ pa_bool_t pa_device_init_description(pa_proplist *p) { return FALSE; } + +pa_bool_t pa_device_init_intended_roles(pa_proplist *p) { + const char *s; + pa_assert(p); + + if (pa_proplist_contains(p, PA_PROP_DEVICE_INTENDED_ROLES)) + return TRUE; + + if ((s = pa_proplist_gets(p, PA_PROP_DEVICE_FORM_FACTOR))) + if (pa_streq(s, "handset") || pa_streq(s, "hands-free")) { + pa_proplist_sets(p, PA_PROP_DEVICE_INTENDED_ROLES, "phone"); + return TRUE; + } + + return FALSE; +} |