[gnome-shell/wip/fmuellner/volume-change-feedback: 15/17] volume: Only emit sound feedback after volume changes
- From: Florian Müllner <fmuellner src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-shell/wip/fmuellner/volume-change-feedback: 15/17] volume: Only emit sound feedback after volume changes
- Date: Sat, 23 Nov 2019 01:54:56 +0000 (UTC)
commit e42aa6a02abb78ce56a7dc318354835c1703a6fd
Author: Florian Müllner <fmuellner gnome org>
Date: Fri Feb 23 23:58:22 2018 +0100
volume: Only emit sound feedback after volume changes
gnome-settings-daemon doesn't play the volume change sound when
the volume stayed the same (that is, it is already at its maximum
or minimum). This looks like the right thing to do, so copy its
behavior.
https://gitlab.gnome.org/GNOME/gnome-shell/issues/53
js/ui/status/volume.js | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
---
diff --git a/js/ui/status/volume.js b/js/ui/status/volume.js
index 9a2dad8944..6be1b2f6a7 100644
--- a/js/ui/status/volume.js
+++ b/js/ui/status/volume.js
@@ -113,6 +113,7 @@ var StreamSlider = class {
let value = this._slider.value;
let volume = value * this._control.get_vol_max_norm();
let prevMuted = this._stream.is_muted;
+ let prevVolume = this._stream.volume;
if (volume < 1) {
this._stream.volume = 0;
if (!prevMuted)
@@ -124,7 +125,8 @@ var StreamSlider = class {
}
this._stream.push_volume();
- if (!this._notifyVolumeChangeId && !this._inDrag) {
+ let volumeChanged = this._stream.volume !== prevVolume;
+ if (volumeChanged && !this._notifyVolumeChangeId && !this._inDrag) {
this._notifyVolumeChangeId = GLib.timeout_add(GLib.PRIORITY_DEFAULT, 30, () => {
this._notifyVolumeChange();
this._notifyVolumeChangeId = 0;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]