aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--debian/changelog8
-rw-r--r--src/service.vala4
-rw-r--r--src/volume-control.vala25
3 files changed, 29 insertions, 8 deletions
diff --git a/debian/changelog b/debian/changelog
index 483c78b..651092c 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,11 @@
+indicator-sound (12.10.2+14.10.20141010-0ubuntu4) UNRELEASED; urgency=medium
+
+ * Remove various Vala warnings
+ * Show notifications on volume change (LP: #1378564, #1378961)
+ * Warn on high audio levels when using headphones (LP: #123633, #1373404)
+
+ -- Ted Gould <ted@ubuntu.com> Wed, 05 Nov 2014 10:34:00 -0600
+
indicator-sound (12.10.2+14.10.20141010-0ubuntu1) utopic; urgency=low
[ Ricardo Salveti de Araujo ]
diff --git a/src/service.vala b/src/service.vala
index d9a2dd3..7daa6db 100644
--- a/src/service.vala
+++ b/src/service.vala
@@ -74,7 +74,7 @@ public class IndicatorSound.Service: Object {
List<string> caps = Notify.get_server_caps ();
if (caps.find_custom ("x-canonical-private-synchronous", strcmp) != null) {
this.notification = new Notify.Notification ("indicator-sound", "", "");
- this.notification.set_hint_string ("x-canonical-private-synchronous", "indicator-sound");
+ this.notification.set_hint ("x-canonical-private-synchronous", "indicator-sound");
}
}
@@ -193,7 +193,7 @@ public class IndicatorSound.Service: Object {
icon = "notification-audio-volume-high";
this.notification.update ("indicator-sound", "", icon);
- this.notification.set_hint_int32 ("value", ((int32) (100 * v / this.max_volume)).clamp (-1, 101));
+ this.notification.set_hint ("value", ((int32) (100 * v / this.max_volume)).clamp (-1, 101));
try {
this.notification.show ();
}
diff --git a/src/volume-control.vala b/src/volume-control.vala
index 6f48c5d..295ebf5 100644
--- a/src/volume-control.vala
+++ b/src/volume-control.vala
@@ -69,7 +69,6 @@ public class VolumeControl : Object
private bool _send_next_local_volume = false;
private double _account_service_volume = 0.0;
private Notify.Notification _notification;
-
private bool _active_port_headphone = false;
public signal void volume_changed (double v);
@@ -605,6 +604,16 @@ public class VolumeControl : Object
{
/* Using this to detect whether we're on the phone or not */
if (_pulse_use_stream_restore) {
+<<<<<<< TREE
+ if (volume == 0.0)
+ _notification.update (_("Volume"), "", "audio-volume-muted");
+ if (volume > 0.0 && volume <= 0.33)
+ _notification.update (_("Volume"), "", "audio-volume-low");
+ if (volume > 0.33 && volume <= 0.66)
+ _notification.update (_("Volume"), "", "audio-volume-medium");
+ if (volume > 0.66 && volume <= 1.0)
+ _notification.update (_("Volume"), "", "audio-volume-high");
+=======
/* Watch for extreme */
if (volume > 0.75 && _active_port_headphone)
high_volume = true;
@@ -776,7 +785,7 @@ public class VolumeControl : Object
}
/* AccountsService operations */
- private void accountsservice_props_changed_cb (DBusProxy proxy, Variant changed_properties, string[] invalidated_properties)
+ private void accountsservice_props_changed_cb (DBusProxy proxy, Variant changed_properties, string[]? invalidated_properties)
{
Variant volume_variant = changed_properties.lookup_value ("Volume", new VariantType ("d"));
if (volume_variant != null) {
@@ -834,10 +843,14 @@ public class VolumeControl : Object
// Get current values and listen for changes
_user_proxy.g_properties_changed.connect (accountsservice_props_changed_cb);
- var props_variant = yield _user_proxy.get_connection ().call (_user_proxy.get_name (), _user_proxy.get_object_path (), "org.freedesktop.DBus.Properties", "GetAll", new Variant ("(s)", _user_proxy.get_interface_name ()), null, DBusCallFlags.NONE, -1);
- Variant props;
- props_variant.get ("(@a{sv})", out props);
- accountsservice_props_changed_cb(_user_proxy, props, null);
+ try {
+ var props_variant = yield _user_proxy.get_connection ().call (_user_proxy.get_name (), _user_proxy.get_object_path (), "org.freedesktop.DBus.Properties", "GetAll", new Variant ("(s)", _user_proxy.get_interface_name ()), null, DBusCallFlags.NONE, -1);
+ Variant props;
+ props_variant.get ("(@a{sv})", out props);
+ accountsservice_props_changed_cb(_user_proxy, props, null);
+ } catch (GLib.Error e) {
+ debug("Unable to get properties for user %s at first try: %s", username, e.message);
+ }
}
private void greeter_user_changed (string username)