Merge pull request #163 from jcass77/fix/162_remove_volume_timer

Remove volume slider timer.
This commit is contained in:
John Cass 2016-02-14 17:35:25 +02:00
commit 1ad34ee23d
7 changed files with 15 additions and 19 deletions

View File

@ -75,6 +75,7 @@ v2.2.0 (UNRELEASED)
- Prevent mobile devices from scaling when used in landscape mode. (Fixes: `#157 <https://github.com/pimusicbox/mopidy-musicbox-webclient/issues/157>`_).
- Scrolling now works in full screen mode for Chrome and Safari as well. (Fixes: `#53 <https://github.com/pimusicbox/mopidy-musicbox-webclient/issues/53>`_).
- No longer interferes with changes to Mopidy's volume levels that are triggered externally. (Fixes: `#162 <https://github.com/pimusicbox/mopidy-musicbox-webclient/issues/162>`_).
v2.1.1 (2016-02-04)
-------------------

View File

@ -114,7 +114,7 @@
<a href="#" onclick="doMute(); return false;"><span title="Toggle mute"><i id="mutebt" class="fa fa-volume-up"></i></span></a>
<label for="volumeslider" class="ui-hidden-accessible">Volume</label>
<input id="volumeslider" data-highlight="true" name="volumeslider" data-mini="true" type="range" min="0"
value="0" max="100" onchange="doVolume(this.value);"/>
value="0" max="100"/>
</div>
</li>
</ul>

View File

@ -375,20 +375,18 @@ function setPosition(pos) {
***********************************************/
function setVolume(value) {
if ($("#volumeslider").val() != value) {
if (!volumeChanging && $("#volumeslider").val() != value) {
$( "#volumeslider" ).off( "change" );
$("#volumeslider").val(value).slider('refresh');
$( "#volumeslider" ).on( "change", function() { doVolume( $(this).val() ); } )
}
}
function doVolume(value) {
if (!volumeChanging) {
volumeChanging = value;
clearInterval(volumeTimer);
volumeTimer = setTimeout(triggerVolume, 500);
mopidy.playback.setVolume({'volume': parseInt(value)});
}
function triggerVolume() {
mopidy.playback.setVolume({'volume': parseInt(volumeChanging)});
volumeChanging = 0;
}
function setMute(nwmute) {

View File

@ -14,9 +14,8 @@ var consume;
var single;
var currentVolume = -1;
var mute;
var volumeChanging = false;
var volumeChanging;
var volumeTimer;
var initgui = true;
var currentpos = 0;
var popupData = {};

View File

@ -257,9 +257,10 @@ function initSocketevents() {
});
mopidy.on("event:volumeChanged", function(data) {
if (!volumeChanging) {
setVolume(data["volume"]);
if (volumeChanging && volumeChanging == data["volume"]) {
volumeChanging = null;
}
setVolume(data["volume"]);
});
mopidy.on("event:muteChanged", function(data) {
@ -573,7 +574,6 @@ $(document).ready(function(event) {
$( "#trackslider" ).on( "slidestart", function() { progressTimer.stop(); } )
$( "#trackslider" ).on( "slidestop", function() { doSeekPos( $(this).val() ); } );
});
function updatePlayIcons (uri, tlid) {

View File

@ -16,10 +16,8 @@ function processCurrenttrack(data) {
* process results of volume
*********************************************************/
function processVolume(data) {
if (!volumeChanging) {
setVolume(data);
}
}
/********************************************************
* process results of mute

View File

@ -1,6 +1,6 @@
CACHE MANIFEST
# 2016-02-14:v2
# 2016-02-14:v4
NETWORK:
*