mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
Merge pull request #474 from redSpoutnik/volume-slider-requests
add 700ms timer for 'mousemove' and 'touchmove' volume listeners
This commit is contained in:
commit
7d0f971fe7
1 changed files with 24 additions and 2 deletions
|
@ -1223,6 +1223,7 @@ define(["playbackManager", "dom", "inputmanager", "datetime", "itemHelper", "med
|
||||||
var programEndDateMs = 0;
|
var programEndDateMs = 0;
|
||||||
var playbackStartTimeTicks = 0;
|
var playbackStartTimeTicks = 0;
|
||||||
var subtitleSyncOverlay;
|
var subtitleSyncOverlay;
|
||||||
|
var volumeSliderTimer;
|
||||||
var nowPlayingVolumeSlider = view.querySelector(".osdVolumeSlider");
|
var nowPlayingVolumeSlider = view.querySelector(".osdVolumeSlider");
|
||||||
var nowPlayingVolumeSliderContainer = view.querySelector(".osdVolumeSliderContainer");
|
var nowPlayingVolumeSliderContainer = view.querySelector(".osdVolumeSliderContainer");
|
||||||
var nowPlayingPositionSlider = view.querySelector(".osdPositionSlider");
|
var nowPlayingPositionSlider = view.querySelector(".osdPositionSlider");
|
||||||
|
@ -1345,13 +1346,34 @@ define(["playbackManager", "dom", "inputmanager", "datetime", "itemHelper", "med
|
||||||
playbackManager.toggleMute(currentPlayer);
|
playbackManager.toggleMute(currentPlayer);
|
||||||
});
|
});
|
||||||
nowPlayingVolumeSlider.addEventListener("change", function () {
|
nowPlayingVolumeSlider.addEventListener("change", function () {
|
||||||
|
if(volumeSliderTimer){
|
||||||
|
// interupt and remove existing timer
|
||||||
|
clearTimeout(volumeSliderTimer);
|
||||||
|
volumeSliderTimer = null;
|
||||||
|
}
|
||||||
playbackManager.setVolume(this.value, currentPlayer);
|
playbackManager.setVolume(this.value, currentPlayer);
|
||||||
});
|
});
|
||||||
nowPlayingVolumeSlider.addEventListener("mousemove", function () {
|
nowPlayingVolumeSlider.addEventListener("mousemove", function () {
|
||||||
playbackManager.setVolume(this.value, currentPlayer);
|
if(!volumeSliderTimer){
|
||||||
|
var that = this;
|
||||||
|
// register new timer
|
||||||
|
volumeSliderTimer = setTimeout(function(){
|
||||||
|
playbackManager.setVolume(that.value, currentPlayer);
|
||||||
|
// delete timer after completion
|
||||||
|
volumeSliderTimer = null;
|
||||||
|
}, 700);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
nowPlayingVolumeSlider.addEventListener("touchmove", function () {
|
nowPlayingVolumeSlider.addEventListener("touchmove", function () {
|
||||||
playbackManager.setVolume(this.value, currentPlayer);
|
if(!volumeSliderTimer){
|
||||||
|
var that = this;
|
||||||
|
// register new timer
|
||||||
|
volumeSliderTimer = setTimeout(function(){
|
||||||
|
playbackManager.setVolume(that.value, currentPlayer);
|
||||||
|
// delete timer after completion
|
||||||
|
volumeSliderTimer = null;
|
||||||
|
}, 700);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
nowPlayingPositionSlider.addEventListener("change", function () {
|
nowPlayingPositionSlider.addEventListener("change", function () {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue