[Xfce4-commits] [panel-plugins/xfce4-pulseaudio-plugin] 01/02: Added a configuration option "show-notifications"
noreply at xfce.org
noreply at xfce.org
Thu Jun 11 00:19:08 CEST 2015
This is an automated email from the git hooks/post-receive script.
andrzejr pushed a commit to branch master
in repository panel-plugins/xfce4-pulseaudio-plugin.
commit e676501007fdf5e9ad2bc6877691967a3037e4e2
Author: Andrzej <ndrwrdck at gmail.com>
Date: Wed Jun 10 22:59:36 2015 +0100
Added a configuration option "show-notifications"
---
panel-plugin/pulseaudio-config.c | 42 ++++++++++++++++++++++++++++++++++++++
panel-plugin/pulseaudio-config.h | 1 +
panel-plugin/pulseaudio-notify.c | 5 ++++-
3 files changed, 47 insertions(+), 1 deletion(-)
diff --git a/panel-plugin/pulseaudio-config.c b/panel-plugin/pulseaudio-config.c
index 253426d..05d1657 100644
--- a/panel-plugin/pulseaudio-config.c
+++ b/panel-plugin/pulseaudio-config.c
@@ -46,6 +46,7 @@
#define DEFAULT_ENABLE_KEYBOARD_SHORTCUTS TRUE
+#define DEFAULT_SHOW_NOTIFICATIONS TRUE
#define DEFAULT_VOLUME_STEP 6
#define DEFAULT_VOLUME_MAX 153
@@ -73,6 +74,7 @@ struct _PulseaudioConfig
GObject __parent__;
gboolean enable_keyboard_shortcuts;
+ gboolean show_notifications;
guint volume_step;
guint volume_max;
gchar *mixer_command;
@@ -84,6 +86,7 @@ enum
{
PROP_0,
PROP_ENABLE_KEYBOARD_SHORTCUTS,
+ PROP_SHOW_NOTIFICATIONS,
PROP_VOLUME_STEP,
PROP_VOLUME_MAX,
PROP_MIXER_COMMAND,
@@ -123,6 +126,15 @@ pulseaudio_config_class_init (PulseaudioConfigClass *klass)
g_object_class_install_property (gobject_class,
+ PROP_SHOW_NOTIFICATIONS,
+ g_param_spec_boolean ("show-notifications", NULL, NULL,
+ DEFAULT_SHOW_NOTIFICATIONS,
+ G_PARAM_READWRITE |
+ G_PARAM_STATIC_STRINGS));
+
+
+
+ g_object_class_install_property (gobject_class,
PROP_VOLUME_STEP,
g_param_spec_uint ("volume-step", NULL, NULL,
1, 50, DEFAULT_VOLUME_STEP,
@@ -164,6 +176,7 @@ static void
pulseaudio_config_init (PulseaudioConfig *config)
{
config->enable_keyboard_shortcuts = DEFAULT_ENABLE_KEYBOARD_SHORTCUTS;
+ config->show_notifications = DEFAULT_SHOW_NOTIFICATIONS;
config->volume_step = DEFAULT_VOLUME_STEP;
config->volume_max = DEFAULT_VOLUME_MAX;
config->mixer_command = g_strdup (DEFAULT_MIXER_COMMAND);
@@ -198,6 +211,10 @@ pulseaudio_config_get_property (GObject *object,
g_value_set_boolean (value, config->enable_keyboard_shortcuts);
break;
+ case PROP_SHOW_NOTIFICATIONS:
+ g_value_set_boolean (value, config->show_notifications);
+ break;
+
case PROP_VOLUME_STEP:
g_value_set_uint (value, config->volume_step);
break;
@@ -240,6 +257,16 @@ pulseaudio_config_set_property (GObject *object,
}
break;
+ case PROP_SHOW_NOTIFICATIONS:
+ val_bool = g_value_get_boolean (value);
+ if (config->show_notifications != val_bool)
+ {
+ config->show_notifications = val_bool;
+ g_object_notify (G_OBJECT (config), "show-notifications");
+ g_signal_emit (G_OBJECT (config), pulseaudio_config_signals [CONFIGURATION_CHANGED], 0);
+ }
+ break;
+
case PROP_VOLUME_STEP:
val_uint = g_value_get_uint (value);
if (config->volume_step != val_uint)
@@ -285,6 +312,17 @@ pulseaudio_config_get_enable_keyboard_shortcuts (PulseaudioConfig *config)
+gboolean
+pulseaudio_config_get_show_notifications (PulseaudioConfig *config)
+{
+ g_return_val_if_fail (IS_PULSEAUDIO_CONFIG (config), DEFAULT_SHOW_NOTIFICATIONS);
+
+ return config->show_notifications;
+}
+
+
+
+
guint
pulseaudio_config_get_volume_step (PulseaudioConfig *config)
{
@@ -335,6 +373,10 @@ pulseaudio_config_new (const gchar *property_base)
xfconf_g_property_bind (channel, property, G_TYPE_BOOLEAN, config, "enable-keyboard-shortcuts");
g_free (property);
+ property = g_strconcat (property_base, "/show-notifications", NULL);
+ xfconf_g_property_bind (channel, property, G_TYPE_BOOLEAN, config, "show-notifications");
+ g_free (property);
+
property = g_strconcat (property_base, "/volume-step", NULL);
xfconf_g_property_bind (channel, property, G_TYPE_UINT, config, "volume-step");
g_free (property);
diff --git a/panel-plugin/pulseaudio-config.h b/panel-plugin/pulseaudio-config.h
index 3136c2a..3771b0c 100644
--- a/panel-plugin/pulseaudio-config.h
+++ b/panel-plugin/pulseaudio-config.h
@@ -39,6 +39,7 @@ GType pulseaudio_config_get_type (void)
PulseaudioConfig *pulseaudio_config_new (const gchar *property_base);
gboolean pulseaudio_config_get_enable_keyboard_shortcuts (PulseaudioConfig *config);
+gboolean pulseaudio_config_get_show_notifications (PulseaudioConfig *config);
guint pulseaudio_config_get_volume_step (PulseaudioConfig *config);
guint pulseaudio_config_get_volume_max (PulseaudioConfig *config);
const gchar *pulseaudio_config_get_mixer_command (PulseaudioConfig *config);
diff --git a/panel-plugin/pulseaudio-notify.c b/panel-plugin/pulseaudio-notify.c
index 09da849..c1120a8 100644
--- a/panel-plugin/pulseaudio-notify.c
+++ b/panel-plugin/pulseaudio-notify.c
@@ -143,7 +143,7 @@ pulseaudio_notify_finalize (GObject *object)
-void
+static void
pulseaudio_notify_notify (PulseaudioNotify *notify)
{
GError *error = NULL;
@@ -157,6 +157,9 @@ pulseaudio_notify_notify (PulseaudioNotify *notify)
g_return_if_fail (IS_PULSEAUDIO_NOTIFY (notify));
g_return_if_fail (IS_PULSEAUDIO_VOLUME (notify->volume));
+ if (!pulseaudio_config_get_show_notifications (notify->config))
+ return;
+
volume = pulseaudio_volume_get_volume (notify->volume);
muted = pulseaudio_volume_get_muted (notify->volume);
connected = pulseaudio_volume_get_connected (notify->volume);
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the Xfce4-commits
mailing list