diff options
author | Xavi Garcia Mena <xavi.garcia.mena@canonical.com> | 2015-11-19 17:06:59 +0100 |
---|---|---|
committer | Xavi Garcia Mena <xavi.garcia.mena@canonical.com> | 2015-11-19 17:06:59 +0100 |
commit | d7fa04a96f2d9eabfdcc56574895c0c9f5785231 (patch) | |
tree | f4912bc7d23ea292c36177d3aa911137294c0a8f | |
parent | f06c2ddee06bce9ed8320d78a65fd6206db3e6f1 (diff) | |
download | ayatana-indicator-sound-d7fa04a96f2d9eabfdcc56574895c0c9f5785231.tar.gz ayatana-indicator-sound-d7fa04a96f2d9eabfdcc56574895c0c9f5785231.tar.bz2 ayatana-indicator-sound-d7fa04a96f2d9eabfdcc56574895c0c9f5785231.zip |
restore warning level volume when warning dialog is cancelled
-rw-r--r-- | src/service.vala | 1 | ||||
-rw-r--r-- | src/volume-control-pulse.vala | 8 | ||||
-rw-r--r-- | src/volume-control.vala | 1 |
3 files changed, 10 insertions, 0 deletions
diff --git a/src/service.vala b/src/service.vala index 2b2d667..985d434 100644 --- a/src/service.vala +++ b/src/service.vala @@ -610,6 +610,7 @@ public class IndicatorSound.Service: Object { && this.notify_server_supports_actions && !this.volume_control.high_volume_approved; if (waiting_user_approve_warn && volume_control.below_warning_volume) { + volume_control.set_warning_volume(); close_notification(warn_notification); } if (warn) { diff --git a/src/volume-control-pulse.vala b/src/volume-control-pulse.vala index 45cf8a6..83b10d5 100644 --- a/src/volume-control-pulse.vala +++ b/src/volume-control-pulse.vala @@ -783,6 +783,14 @@ public class VolumeControlPulse : VolumeControl } } + public override void set_warning_volume() { + var vol = new VolumeControl.Volume(); + vol.volume = _warning_volume_norms; + vol.reason = _volume.reason; + debug("Setting warning level volume from %f down to %f", _volume.volume, vol.volume); + volume = vol; + } + /** HIGH VOLUME APPROVED PROPERTY **/ private bool _high_volume_approved = false; diff --git a/src/volume-control.vala b/src/volume-control.vala index 632af08..9b59a18 100644 --- a/src/volume-control.vala +++ b/src/volume-control.vala @@ -60,6 +60,7 @@ public abstract class VolumeControl : Object public virtual bool high_volume_approved { get { return false; } protected set { } } public virtual void approve_high_volume() { } public virtual void clamp_to_high_volume() { } + public virtual void set_warning_volume() { } public abstract void set_mute (bool mute); |