1
0
Fork 0
mirror of https://github.com/jellyfin/jellyfin-web synced 2025-03-30 19:56:21 +00:00

3.0.5666.9

This commit is contained in:
Luke Pulverenti 2015-07-11 20:33:50 -04:00
parent 506078a7fd
commit df208fff3a

View file

@ -135,41 +135,44 @@
}); });
}); });
volumeSlider = $('.nowPlayingBarVolumeSlider', elem).on('change', function () { // Unfortunately this is necessary because the polymer elements might not be ready immediately and there doesn't seem to be an event-driven way to find out when
setTimeout(function() {
volumeSlider = $('.nowPlayingBarVolumeSlider', elem).on('change', function () {
if (currentPlayer) { if (currentPlayer) {
currentPlayer.setVolume(this.value); currentPlayer.setVolume(this.value);
} }
})[0]; })[0];
positionSlider = $('.nowPlayingBarPositionSlider', elem).on('change', function () { positionSlider = $('.nowPlayingBarPositionSlider', elem).on('change', function () {
if (currentPlayer && lastPlayerState) { if (currentPlayer && lastPlayerState) {
var newPercent = parseFloat(this.value); var newPercent = parseFloat(this.value);
var newPositionTicks = (newPercent / 100) * lastPlayerState.NowPlayingItem.RunTimeTicks; var newPositionTicks = (newPercent / 100) * lastPlayerState.NowPlayingItem.RunTimeTicks;
currentPlayer.seek(Math.floor(newPositionTicks)); currentPlayer.seek(Math.floor(newPositionTicks));
} }
})[0]; })[0];
positionSlider._setPinValue = function (value) { positionSlider._setPinValue = function (value) {
var state = lastPlayerState; var state = lastPlayerState;
if (!state || !state.NowPlayingItem || !state.NowPlayingItem.RunTimeTicks) { if (!state || !state.NowPlayingItem || !state.NowPlayingItem.RunTimeTicks) {
this.pinValue = '--:--'; this.pinValue = '--:--';
return; return;
} }
var ticks = state.NowPlayingItem.RunTimeTicks; var ticks = state.NowPlayingItem.RunTimeTicks;
ticks /= 100; ticks /= 100;
ticks *= value; ticks *= value;
this.pinValue = Dashboard.getDisplayTime(ticks); this.pinValue = Dashboard.getDisplayTime(ticks);
}; };
}, 300);
} }
function getNowPlayingBar() { function getNowPlayingBar() {
@ -187,9 +190,8 @@
elem.classList.add('noMediaProgress'); elem.classList.add('noMediaProgress');
} }
$.mobile.loadPage('nowplaying.html');
bindEvents(elem); bindEvents(elem);
$.mobile.loadPage('nowplaying.html');
return elem; return elem;
} }
@ -218,14 +220,11 @@
var now = new Date().getTime(); var now = new Date().getTime();
if ((now - lastUpdateTime) < 700) { if ((now - lastUpdateTime) < 700) {
console.log('skipping UI update');
return; return;
} }
lastUpdateTime = now; lastUpdateTime = now;
} }
console.log(new Date().getTime());
lastPlayerState = state; lastPlayerState = state;
if (!muteButton) { if (!muteButton) {
@ -250,21 +249,25 @@
updatePlayerVolumeState(state, playerInfo); updatePlayerVolumeState(state, playerInfo);
var nowPlayingItem = state.NowPlayingItem || {}; var nowPlayingItem = state.NowPlayingItem || {};
if (!positionSlider.dragging) {
if (nowPlayingItem && nowPlayingItem.RunTimeTicks) { // See bindEvents for why this is necessary
if (positionSlider) {
if (!positionSlider.dragging) {
var pct = playState.PositionTicks / nowPlayingItem.RunTimeTicks; if (nowPlayingItem.RunTimeTicks) {
pct *= 100;
positionSlider.value = pct; var pct = playState.PositionTicks / nowPlayingItem.RunTimeTicks;
pct *= 100;
} else { positionSlider.value = pct;
positionSlider.value = 0; } else {
positionSlider.value = 0;
}
positionSlider.disabled = !playState.CanSeek;
} }
positionSlider.disabled = !playState.CanSeek;
} }
var timeText = Dashboard.getDisplayTime(playState.PositionTicks); var timeText = Dashboard.getDisplayTime(playState.PositionTicks);
@ -333,10 +336,13 @@
hideButton(unmuteButton); hideButton(unmuteButton);
} }
$(volumeSlider).visible(showVolumeSlider); // See bindEvents for why this is necessary
if (volumeSlider) {
$(volumeSlider).visible(showVolumeSlider);
if (!volumeSlider.dragging) { if (!volumeSlider.dragging) {
volumeSlider.value = playState.VolumeLevel || 0; volumeSlider.value = playState.VolumeLevel || 0;
}
} }
} }