[Xfce4-commits] [panel-plugins/xfce4-pulseaudio-plugin] 01/01: Change default devices when changed from external application (bug #13908)
noreply at xfce.org
noreply at xfce.org
Wed Nov 22 05:32:11 CET 2017
This is an automated email from the git hooks/post-receive script.
b l u e s a b r e p u s h e d a c o m m i t t o b r a n c h m a s t e r
in repository panel-plugins/xfce4-pulseaudio-plugin.
commit 1f501d24799fb7b132b1e36e0278ae1c89021bcd
Author: Sean Davis <smd.seandavis at gmail.com>
Date: Tue Nov 21 23:32:05 2017 -0500
Change default devices when changed from external application (bug #13908)
---
panel-plugin/pulseaudio-volume.c | 13 +++++++++++--
panel-plugin/pulseaudio-volume.h | 4 ++--
2 files changed, 13 insertions(+), 4 deletions(-)
diff --git a/panel-plugin/pulseaudio-volume.c b/panel-plugin/pulseaudio-volume.c
index df93d13..6a2f1a0 100644
--- a/panel-plugin/pulseaudio-volume.c
+++ b/panel-plugin/pulseaudio-volume.c
@@ -262,6 +262,9 @@ pulseaudio_volume_server_info_cb (pa_context *context,
PulseaudioVolume *volume = PULSEAUDIO_VOLUME (userdata);
if (i == NULL) return;
+ pulseaudio_volume_set_default_input (volume, i->default_source_name);
+ pulseaudio_volume_set_default_output (volume, i->default_sink_name);
+
pulseaudio_debug ("server: %s@%s, v.%s", i->user_name, i->server_name, i->server_version);
pa_context_get_sink_info_by_name (context, i->default_sink_name, pulseaudio_volume_sink_info_cb, volume);
pa_context_get_source_info_by_name (context, i->default_source_name, pulseaudio_volume_source_info_cb, volume);
@@ -902,8 +905,11 @@ pulseaudio_volume_default_sink_changed (pa_context *context,
void
pulseaudio_volume_set_default_output (PulseaudioVolume *volume,
- gchar *name)
+ const gchar *name)
{
+ if (g_strcmp0(name, volume->default_sink_name) == 0)
+ return;
+
g_free (volume->default_sink_name);
volume->default_sink_name = g_strdup (name);
@@ -942,8 +948,11 @@ pulseaudio_volume_default_source_changed (pa_context *context,
void
pulseaudio_volume_set_default_input (PulseaudioVolume *volume,
- gchar *name)
+ const gchar *name)
{
+ if (g_strcmp0 (name, volume->default_source_name) == 0)
+ return;
+
g_free (volume->default_source_name);
volume->default_source_name = g_strdup (name);
diff --git a/panel-plugin/pulseaudio-volume.h b/panel-plugin/pulseaudio-volume.h
index 2bef77f..33cff96 100644
--- a/panel-plugin/pulseaudio-volume.h
+++ b/panel-plugin/pulseaudio-volume.h
@@ -63,14 +63,14 @@ gchar *pulseaudio_volume_get_output_by_name (PulseaudioVol
gchar *name);
const gchar *pulseaudio_volume_get_default_output (PulseaudioVolume *volume);
void pulseaudio_volume_set_default_output (PulseaudioVolume *volume,
- gchar *name);
+ const gchar *name);
GList *pulseaudio_volume_get_input_list (PulseaudioVolume *volume);
gchar *pulseaudio_volume_get_input_by_name (PulseaudioVolume *volume,
gchar *name);
const gchar *pulseaudio_volume_get_default_input (PulseaudioVolume *volume);
void pulseaudio_volume_set_default_input (PulseaudioVolume *volume,
- gchar *name);
+ const gchar *name);
G_END_DECLS
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the Xfce4-commits
mailing list