mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
restore music alphabet pickers
This commit is contained in:
parent
a61e96accb
commit
467dc13089
14 changed files with 93 additions and 36 deletions
|
@ -30,14 +30,14 @@
|
|||
"web-component-tester": "*",
|
||||
"webcomponentsjs": "webcomponents/webcomponentsjs#^0.7.0"
|
||||
},
|
||||
"homepage": "https://github.com/PolymerElements/paper-ripple",
|
||||
"homepage": "https://github.com/polymerelements/paper-ripple",
|
||||
"_release": "1.0.2",
|
||||
"_resolution": {
|
||||
"type": "version",
|
||||
"tag": "v1.0.2",
|
||||
"commit": "b546dbe6ad0b1f58cac80caec3136cf3232e12fc"
|
||||
},
|
||||
"_source": "git://github.com/PolymerElements/paper-ripple.git",
|
||||
"_source": "git://github.com/polymerelements/paper-ripple.git",
|
||||
"_target": "^1.0.0",
|
||||
"_originalSource": "PolymerElements/paper-ripple"
|
||||
"_originalSource": "polymerelements/paper-ripple"
|
||||
}
|
8
dashboard-ui/cordova/android/vlcplayer.js
vendored
8
dashboard-ui/cordova/android/vlcplayer.js
vendored
|
@ -186,8 +186,6 @@
|
|||
|
||||
playerState.currentSrc = val;
|
||||
self.report('playing', null, startPosMs, false, 100);
|
||||
|
||||
playerState.currentSrc = val;
|
||||
}
|
||||
};
|
||||
|
||||
|
@ -256,14 +254,10 @@
|
|||
return deferred.promise();
|
||||
};
|
||||
|
||||
self.onActivityClosed = function (wasStopped, hasError, endPositionMs, currentSrc) {
|
||||
self.onActivityClosed = function (wasStopped, hasError, endPositionMs) {
|
||||
|
||||
playerState.currentTime = endPositionMs;
|
||||
|
||||
if (currentSrc) {
|
||||
playerState.currentSrc = currentSrc;
|
||||
}
|
||||
|
||||
if (wasStopped) {
|
||||
MediaPlayer.stop(false);
|
||||
}
|
||||
|
|
|
@ -49,10 +49,6 @@
|
|||
background-color: rgba(0, 0, 0, .7);
|
||||
}
|
||||
|
||||
.videoControlButtons {
|
||||
padding: 0 .5em;
|
||||
}
|
||||
|
||||
.videoTopControls {
|
||||
padding: 0 1em;
|
||||
background-color: rgba(0, 0, 0, .5);
|
||||
|
@ -70,8 +66,8 @@
|
|||
}
|
||||
|
||||
.videoAdvancedControls iron-icon {
|
||||
width: 32px;
|
||||
height: 32px;
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
}
|
||||
|
||||
.nowPlayingInfo {
|
||||
|
@ -99,6 +95,36 @@
|
|||
font-size: 14px;
|
||||
}
|
||||
|
||||
.videoPositionSlider {
|
||||
width: 300px;
|
||||
vertical-align: middle;
|
||||
margin-left: -1em;
|
||||
}
|
||||
|
||||
@media all and (max-width: 440px) {
|
||||
.videoPositionSlider {
|
||||
width: 240px;
|
||||
}
|
||||
}
|
||||
|
||||
@media all and (max-width: 400px) {
|
||||
.videoPositionSlider {
|
||||
width: 220px;
|
||||
}
|
||||
}
|
||||
|
||||
@media all and (max-width: 350px) {
|
||||
.videoPositionSlider {
|
||||
width: 200px;
|
||||
}
|
||||
}
|
||||
|
||||
@media all and (max-width: 320px) {
|
||||
.videoPositionSlider {
|
||||
width: 170px;
|
||||
}
|
||||
}
|
||||
|
||||
@media all and (max-width: 1200px) {
|
||||
#videoPlayer .nowPlayingTabs {
|
||||
font-size: 13px;
|
||||
|
@ -202,7 +228,6 @@
|
|||
@media all and (max-width: 1200px), all and (max-height: 720px) {
|
||||
.videoControls .currentTime {
|
||||
margin-right: 0;
|
||||
min-width: 120px;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -60,6 +60,8 @@
|
|||
</neon-animatable>
|
||||
<neon-animatable>
|
||||
<div class="pageTabContent" data-index="1">
|
||||
<div class="alphabetPicker">
|
||||
</div>
|
||||
<div class="viewSettings">
|
||||
<div class="listTopPaging">
|
||||
</div>
|
||||
|
@ -75,6 +77,8 @@
|
|||
</neon-animatable>
|
||||
<neon-animatable>
|
||||
<div class="pageTabContent" data-index="2">
|
||||
<div class="alphabetPicker">
|
||||
</div>
|
||||
<div class="viewSettings">
|
||||
<div class="listTopPaging">
|
||||
</div>
|
||||
|
@ -90,6 +94,8 @@
|
|||
</neon-animatable>
|
||||
<neon-animatable>
|
||||
<div class="pageTabContent" data-index="3">
|
||||
<div class="alphabetPicker">
|
||||
</div>
|
||||
<div class="viewSettings">
|
||||
<div class="listTopPaging">
|
||||
</div>
|
||||
|
|
|
@ -48,7 +48,7 @@
|
|||
</div>
|
||||
<div class="buttonsRow2">
|
||||
<paper-fab icon="audiotrack" class="btnAudioTracks videoButton btnPlayStateCommand subdued" title="${ButtonAudioTracks}" data-command="GoToSearch"></paper-fab>
|
||||
<paper-fab icon="subtitles" class="btnSubtitles videoButton btnPlayStateCommand subdued" title="${ButtonSubtitles}" data-command="GoToSearch"></paper-fab>
|
||||
<paper-fab icon="closed-caption" class="btnSubtitles videoButton btnPlayStateCommand subdued" title="${ButtonSubtitles}" data-command="GoToSearch"></paper-fab>
|
||||
<paper-fab icon="movie" class="btnChapters videoButton btnPlayStateCommand subdued" title="${ButtonScenes}" data-command="GoToSearch"></paper-fab>
|
||||
<paper-fab icon="fullscreen" class="btnToggleFullscreen videoButton btnPlayStateCommand subdued" title="${ButtonFullscreen}" data-command="ToggleFullscreen"></paper-fab>
|
||||
</div>
|
||||
|
|
|
@ -9,7 +9,20 @@
|
|||
var mediaElement;
|
||||
var self = this;
|
||||
|
||||
function hideStatusBar() {
|
||||
if (options.type == 'video' && window.StatusBar) {
|
||||
StatusBar.hide();
|
||||
}
|
||||
}
|
||||
|
||||
function showStatusBar() {
|
||||
if (options.type == 'video' && window.StatusBar) {
|
||||
StatusBar.show();
|
||||
}
|
||||
}
|
||||
|
||||
function onEnded() {
|
||||
showStatusBar();
|
||||
$(self).trigger('ended');
|
||||
}
|
||||
|
||||
|
@ -66,6 +79,7 @@
|
|||
var errorCode = this.error ? this.error.code : '';
|
||||
Logger.log('Media element error code: ' + errorCode);
|
||||
|
||||
showStatusBar();
|
||||
$(self).trigger('error');
|
||||
}
|
||||
|
||||
|
@ -142,6 +156,8 @@
|
|||
|
||||
function onOneVideoPlaying() {
|
||||
|
||||
hideStatusBar();
|
||||
|
||||
var requiresNativeControls = !self.enableCustomVideoControls();
|
||||
|
||||
if (requiresNativeControls) {
|
||||
|
@ -553,6 +569,10 @@
|
|||
|
||||
self.enableCustomVideoControls = function () {
|
||||
|
||||
if (AppInfo.isNativeApp && $.browser.safari) {
|
||||
return true;
|
||||
}
|
||||
|
||||
return self.canAutoPlayVideo() && !$.browser.mobile;
|
||||
};
|
||||
|
||||
|
|
|
@ -100,12 +100,9 @@
|
|||
|
||||
if (AppInfo.isNativeApp) {
|
||||
cacheDuration = 300000;
|
||||
}
|
||||
else if ($.browser.ipad || $.browser.iphone || $.browser.android) {
|
||||
} else if ($.browser.ipad || $.browser.iphone || $.browser.android) {
|
||||
cacheDuration = 10000;
|
||||
}
|
||||
|
||||
else {
|
||||
} else {
|
||||
cacheDuration = 60000;
|
||||
}
|
||||
|
||||
|
@ -237,8 +234,7 @@
|
|||
|
||||
if ($.browser.safari) {
|
||||
tabs.noBar = true;
|
||||
}
|
||||
else {
|
||||
} else {
|
||||
LibraryBrowser.configureSwipeTabs(ownerpage, tabs, pages);
|
||||
}
|
||||
|
||||
|
@ -269,8 +265,8 @@
|
|||
var delay = LibraryBrowser.animatePaperTabs() ? 500 : 0;
|
||||
|
||||
setTimeout(function () {
|
||||
|
||||
$(pgs).trigger('tabchange');
|
||||
LibraryBrowser.fixAlphabetPicker(pages);
|
||||
}, delay);
|
||||
});
|
||||
|
||||
|
@ -281,6 +277,20 @@
|
|||
}
|
||||
},
|
||||
|
||||
fixAlphabetPicker: function (parent) {
|
||||
|
||||
if (!$.browser.android || !AppInfo.isNativeApp) {
|
||||
return;
|
||||
}
|
||||
|
||||
var pickers = parent.querySelectorAll('.alphabetPicker');
|
||||
for (var i = 0, length = pickers.length; i < length; i++) {
|
||||
var picker = pickers[i];
|
||||
picker.classList.add('hide');
|
||||
picker.classList.remove('hide');
|
||||
}
|
||||
},
|
||||
|
||||
onTabbedpagebeforeshow: function () {
|
||||
|
||||
var page = this;
|
||||
|
|
|
@ -654,7 +654,7 @@
|
|||
// Embedding onclicks due to issues not firing in cordova safari
|
||||
html += '<paper-icon-button icon="audiotrack" class="mediaButton videoAudioButton" onclick="MediaPlayer.showAudioTracksFlyout();"></paper-icon-button>';
|
||||
|
||||
html += '<paper-icon-button icon="subtitles" class="mediaButton videoSubtitleButton" onclick="MediaPlayer.showSubtitleMenu();"></paper-icon-button>';
|
||||
html += '<paper-icon-button icon="closed-caption" class="mediaButton videoSubtitleButton" onclick="MediaPlayer.showSubtitleMenu();"></paper-icon-button>';
|
||||
|
||||
html += '<paper-icon-button icon="settings" class="mediaButton videoQualityButton" onclick="MediaPlayer.showQualityFlyout();"></paper-icon-button>';
|
||||
|
||||
|
@ -679,7 +679,7 @@
|
|||
|
||||
html += '<paper-icon-button icon="skip-next" class="nextTrackButton mediaButton videoTrackControl hide" onclick="MediaPlayer.nextTrack();"></paper-icon-button>';
|
||||
|
||||
html += '<paper-slider pin step=".1" min="0" max="100" value="0" class="videoPositionSlider" style="width:300px;vertical-align:middle;margin-left:-1em;"></paper-slider>';
|
||||
html += '<paper-slider pin step=".1" min="0" max="100" value="0" class="videoPositionSlider"></paper-slider>';
|
||||
|
||||
html += '<div class="currentTime">--:--</div>';
|
||||
|
||||
|
@ -953,10 +953,10 @@
|
|||
|
||||
var requiresNativeControls = !mediaRenderer.enableCustomVideoControls();
|
||||
|
||||
if (requiresNativeControls) {
|
||||
if (requiresNativeControls || AppInfo.isNativeApp) {
|
||||
$('#video-fullscreenButton', videoControls).hide();
|
||||
} else {
|
||||
$('#video-fullscreenButton', videoControls).show();
|
||||
$('#video-fullscreenButton', videoControls).hide();
|
||||
}
|
||||
|
||||
if (AppInfo.hasPhysicalVolumeButtons) {
|
||||
|
|
|
@ -133,7 +133,7 @@
|
|||
lazy: true,
|
||||
cardLayout: true,
|
||||
showDetailsMenu: true
|
||||
});
|
||||
});re
|
||||
}
|
||||
else if (view == "Timeline") {
|
||||
html = LibraryBrowser.getPosterViewHtml({
|
||||
|
@ -168,7 +168,7 @@
|
|||
$('.btnChangeLayout', page).on('layoutchange', function (e, layout) {
|
||||
getPageData().view = layout;
|
||||
LibraryBrowser.saveViewSetting(getSavedQueryKey(), layout);
|
||||
reloadItems(page);
|
||||
reloadItems(page, viewPanel);
|
||||
});
|
||||
|
||||
// On callback make sure to set StartIndex = 0
|
||||
|
|
|
@ -183,7 +183,7 @@
|
|||
reloadItems(tabContent, viewPanel);
|
||||
});
|
||||
|
||||
$('.alphabetPicker', this).on('alphaselect', function (e, character) {
|
||||
$('.alphabetPicker', tabContent).on('alphaselect', function (e, character) {
|
||||
|
||||
var query = getQuery();
|
||||
|
||||
|
|
|
@ -183,7 +183,7 @@
|
|||
reloadItems(tabContent, viewPanel);
|
||||
});
|
||||
|
||||
$('.alphabetPicker', this).on('alphaselect', function (e, character) {
|
||||
$('.alphabetPicker', tabContent).on('alphaselect', function (e, character) {
|
||||
|
||||
var query = getQuery();
|
||||
|
||||
|
|
|
@ -1763,7 +1763,7 @@ var AppInfo = {};
|
|||
|
||||
AppInfo.enableUserImage = true;
|
||||
AppInfo.hasPhysicalVolumeButtons = isCordova || isMobile;
|
||||
|
||||
AppInfo.hasPhysicalVolumeButtons = true;
|
||||
AppInfo.enableBackButton = isIOS && (window.navigator.standalone || AppInfo.isNativeApp);
|
||||
|
||||
AppInfo.supportsFullScreen = isCordova && isAndroid;
|
||||
|
|
1
dashboard-ui/thirdparty/emby-icons.html
vendored
1
dashboard-ui/thirdparty/emby-icons.html
vendored
|
@ -132,6 +132,7 @@ See [iron-iconset](#iron-iconset) and [iron-iconset-svg](#iron-iconset-svg) for
|
|||
<g id="error"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z" /></g>
|
||||
<g id="wifi"><path d="M1 9l2 2c4.97-4.97 13.03-4.97 18 0l2-2C16.93 2.93 7.08 2.93 1 9zm8 8l3 3 3-3c-1.65-1.66-4.34-1.66-6 0zm-4-4l2 2c2.76-2.76 7.24-2.76 10 0l2-2C15.14 9.14 8.87 9.14 5 13z" /></g>
|
||||
<g id="ondemand-video"><path d="M21 3H3c-1.11 0-2 .89-2 2v12c0 1.1.89 2 2 2h5v2h8v-2h5c1.1 0 1.99-.9 1.99-2L23 5c0-1.11-.9-2-2-2zm0 14H3V5h18v12zm-5-6l-7 4V7z" /></g>
|
||||
<g id="closed-caption"><path d="M19 4H5c-1.11 0-2 .9-2 2v12c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm-8 7H9.5v-.5h-2v3h2V13H11v1c0 .55-.45 1-1 1H7c-.55 0-1-.45-1-1v-4c0-.55.45-1 1-1h3c.55 0 1 .45 1 1v1zm7 0h-1.5v-.5h-2v3h2V13H18v1c0 .55-.45 1-1 1h-3c-.55 0-1-.45-1-1v-4c0-.55.45-1 1-1h3c.55 0 1 .45 1 1v1z" /></g>
|
||||
</defs>
|
||||
</svg>
|
||||
</iron-iconset-svg>
|
||||
|
|
|
@ -19076,6 +19076,7 @@ subject to an additional IP rights grant found at http://polymer.github.io/PATEN
|
|||
<g id="error"><path d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z"></path></g>
|
||||
<g id="wifi"><path d="M1 9l2 2c4.97-4.97 13.03-4.97 18 0l2-2C16.93 2.93 7.08 2.93 1 9zm8 8l3 3 3-3c-1.65-1.66-4.34-1.66-6 0zm-4-4l2 2c2.76-2.76 7.24-2.76 10 0l2-2C15.14 9.14 8.87 9.14 5 13z"></path></g>
|
||||
<g id="ondemand-video"><path d="M21 3H3c-1.11 0-2 .89-2 2v12c0 1.1.89 2 2 2h5v2h8v-2h5c1.1 0 1.99-.9 1.99-2L23 5c0-1.11-.9-2-2-2zm0 14H3V5h18v12zm-5-6l-7 4V7z"></path></g>
|
||||
<g id="closed-caption"><path d="M19 4H5c-1.11 0-2 .9-2 2v12c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2V6c0-1.1-.9-2-2-2zm-8 7H9.5v-.5h-2v3h2V13H11v1c0 .55-.45 1-1 1H7c-.55 0-1-.45-1-1v-4c0-.55.45-1 1-1h3c.55 0 1 .45 1 1v1zm7 0h-1.5v-.5h-2v3h2V13H18v1c0 .55-.45 1-1 1h-3c-.55 0-1-.45-1-1v-4c0-.55.45-1 1-1h3c.55 0 1 .45 1 1v1z"></path></g>
|
||||
</defs>
|
||||
</svg>
|
||||
</iron-iconset-svg>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue