summaryrefslogtreecommitdiffstats
path: root/src/plugin.c
diff options
context:
space:
mode:
authorLennart Poettering <lennart@poettering.net>2004-10-24 00:47:32 +0000
committerLennart Poettering <lennart@poettering.net>2004-10-24 00:47:32 +0000
commitdaa3f005069ce5d87d530c2b65f400402d73166d (patch)
treef35c78bc2057bcfa1e1abbb3ff1a8d09afc81d40 /src/plugin.c
parentc015e8ecf0391bf46f319b7625ff06561ca92bd8 (diff)
use user volume API
git-svn-id: file:///home/lennart/svn/public/xmms-pulse/trunk@27 ef929aba-56e2-0310-84e0-b7573d389508
Diffstat (limited to 'src/plugin.c')
-rw-r--r--src/plugin.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/plugin.c b/src/plugin.c
index 1dac961..1ff894e 100644
--- a/src/plugin.c
+++ b/src/plugin.c
@@ -437,25 +437,26 @@ static void execute_request(struct request *r) {
static void polyp_get_volume(int *l, int *r) {
struct request req;
- int v;
+ pa_volume_t v;
+ int u;
req.message = MESSAGE_GETVOLUME;
execute_request(&req);
- if (!req.success) {
- *l = *r = (saved_volume*100)/PA_VOLUME_NORM;
- return;
- }
+ if (!req.success)
+ v = saved_volume;
+ else
+ saved_volume = v = req.volume;
- v = (req.volume*100)/PA_VOLUME_NORM;
- *r = *l = v > 100 ? 100 : v;
+ u = (int) (pa_volume_to_user(v)*100);
+ *r = *l = u > 100 ? 100 : u;
}
void polyp_set_volume(int l, int r) {
struct request req;
req.message = MESSAGE_SETVOLUME;
- req.volume = ((l>r?l:r)*PA_VOLUME_NORM)/100;
+ req.volume = pa_volume_from_user((double) (l>r?l:r)/100);
execute_request(&req);
saved_volume = req.volume;