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

update icons

This commit is contained in:
Luke Pulverenti 2015-06-19 18:01:47 -04:00
parent 4d603ad38c
commit 07df993238
16 changed files with 199 additions and 75 deletions

View file

@ -5,7 +5,7 @@
}
function show(options) {
require(['paperbuttonstyle'], function() {
require(['paperbuttonstyle'], function () {
// items
// positionTo
// showCancel
@ -13,7 +13,39 @@
var id = 'dlg' + new Date().getTime();
var html = '';
html += '<paper-dialog id="' + id + '" entry-animation="scale-up-animation" exit-animation="fade-out-animation" with-backdrop>';
var style = "";
if (options.positionTo) {
var pos = $(options.positionTo).offset();
pos.top += $(options.positionTo).innerHeight() / 2;
pos.left += $(options.positionTo).innerWidth() / 2;
// Account for margins
pos.top -= 24;
pos.left -= 24;
// Account for popup size - we can't predict this yet so just estimate
pos.top -= 100;
pos.left -= 80;
// Account for scroll position
pos.top -= $(window).scrollTop();
pos.left -= $(window).scrollLeft();
// Avoid showing too close to the bottom
pos.top = Math.min(pos.top, $(window).height() - 300);
pos.left = Math.min(pos.left, $(window).width() - 300);
// Do some boundary checking
pos.top = Math.max(pos.top, 0);
pos.left = Math.max(pos.left, 0);
style += 'position:fixed;top:' + pos.top + 'px;left:' + pos.left + 'px';
}
html += '<paper-dialog id="' + id + '" entry-animation="fade-in-animation" exit-animation="fade-out-animation" with-backdrop style="' + style + '">';
if (options.title) {
html += '<h2>';
@ -26,8 +58,11 @@
var option = options.items[i];
html += '<paper-button class="block blue ripple btnOption" data-id="' + option.id + '" style="margin:0;">';
//html += '<iron-icon icon="close"></iron-icon>';
html += '<paper-button class="block menuButton ripple btnOption" data-id="' + option.id + '" style="margin:0;">';
if (option.ironIcon) {
html += '<iron-icon icon="' + option.ironIcon + '"></iron-icon>';
}
html += '<span>' + option.name + '</span>';
html += '</paper-button>';
}
@ -53,10 +88,18 @@
$('.btnOption', dlg).on('click', function () {
if (options.callback) {
options.callback(this.getAttribute('data-id'));
}
dlg.close();
var selectedId = this.getAttribute('data-id');
// Add a delay here to allow the click animation to finish, for nice effect
setTimeout(function () {
dlg.close();
if (options.callback) {
options.callback(selectedId);
}
}, 100);
});
}, 100);
});

View file

@ -17,6 +17,7 @@
}
function populateVersions(packageInfo, page, installedPlugin) {
var html = '';
for (var i = 0, length = packageInfo.versions.length; i < length; i++) {
@ -109,12 +110,12 @@
$('.pluginName', page).html(pkg.name);
if (pkg.targetSystem == 'Server') {
$("#btnInstallDiv", page).show();
$("#btnInstallDiv", page).visible(true);
$("#nonServerMsg", page).hide();
$("#pSelectVersion", page).show();
$("#pSelectVersion", page).visible(true);
} else {
$("#btnInstallDiv", page).hide();
$("#pSelectVersion", page).hide();
$("#btnInstallDiv", page).visible(false);
$("#pSelectVersion", page).visible(false);
var msg = Globalize.translate('MessageInstallPluginFromApp');
$("#nonServerMsg", page).html(msg).show();

View file

@ -557,7 +557,7 @@
$('.btnPlay', page).on('click', function () {
var userdata = currentItem.UserData || {};
LibraryBrowser.showPlayMenu(this, currentItem.Id, currentItem.Type, false, "Audio", userdata.PlaybackPositionTicks);
LibraryBrowser.showPlayMenu(null, currentItem.Id, currentItem.Type, false, "Audio", userdata.PlaybackPositionTicks);
});
$('.itemsContainer', page).on('playallfromhere', function (e, index) {

View file

@ -1588,7 +1588,7 @@
mediaType = "Audio";
}
LibraryBrowser.showPlayMenu(this, currentItem.Id, currentItem.Type, currentItem.IsFolder, mediaType, userdata.PlaybackPositionTicks);
LibraryBrowser.showPlayMenu(null, currentItem.Id, currentItem.Type, currentItem.IsFolder, mediaType, userdata.PlaybackPositionTicks);
});
$('.btnPlayTrailer', page).on('click', function () {

View file

@ -237,7 +237,7 @@
});
},
showPlayMenu: function (positionTo, itemId, itemType, isFolder, mediaType, resumePositionTicks, showAddToPlaylist) {
showPlayMenu: function (positionTo, itemId, itemType, isFolder, mediaType, resumePositionTicks) {
var externalPlayers = AppSettings.enableExternalPlayers();
@ -249,49 +249,91 @@
}
}
$('.playFlyout').popup("close").remove();
var html = '<div data-role="popup" class="playFlyout" data-history="false" data-theme="a">';
html += '<ul data-role="listview" style="min-width: 160px;">';
html += '<li data-icon="false"><a href="#" onclick="MediaController.play(\'' + itemId + '\');LibraryBrowser.closePlayMenu();">' + Globalize.translate('ButtonPlay') + '</a></li>';
if (!isFolder && externalPlayers) {
html += '<li data-icon="false"><a href="#" onclick="LibraryBrowser.closePlayMenu();LibraryBrowser.playInExternalPlayer(\'' + itemId + '\');">' + Globalize.translate('ButtonPlayExternalPlayer') + '</a></li>';
}
var menuItems = [];
if (resumePositionTicks) {
html += '<li data-icon="false"><a href="#" onclick="MediaController.play({ids:[\'' + itemId + '\'],startPositionTicks:' + resumePositionTicks + '});LibraryBrowser.closePlayMenu();">' + Globalize.translate('ButtonResume') + '</a></li>';
menuItems.push({
name: Globalize.translate('ButtonResume'),
id: 'resume',
ironIcon: 'play-arrow'
});
}
menuItems.push({
name: Globalize.translate('ButtonPlay'),
id: 'play',
ironIcon: 'play-arrow'
});
if (!isFolder && externalPlayers && mediaType != "Audio") {
menuItems.push({
name: Globalize.translate('ButtonPlayExternalPlayer'),
id: 'externalplayer',
ironIcon: 'airplay'
});
}
if (MediaController.canQueueMediaType(mediaType, itemType)) {
html += '<li data-icon="false"><a href="#" onclick="MediaController.queue(\'' + itemId + '\');LibraryBrowser.closePlayMenu();">' + Globalize.translate('ButtonQueue') + '</a></li>';
menuItems.push({
name: Globalize.translate('ButtonQueue'),
id: 'queue',
ironIcon: 'playlist-add'
});
}
if (itemType == "Audio" || itemType == "MusicAlbum" || itemType == "MusicArtist" || itemType == "MusicGenre") {
html += '<li data-icon="false"><a href="#" onclick="MediaController.instantMix(\'' + itemId + '\');LibraryBrowser.closePlayMenu();">' + Globalize.translate('ButtonInstantMix') + '</a></li>';
menuItems.push({
name: Globalize.translate('ButtonInstantMix'),
id: 'instantmix',
ironIcon: 'shuffle'
});
}
if (isFolder || itemType == "MusicArtist" || itemType == "MusicGenre") {
html += '<li data-icon="false"><a href="#" onclick="MediaController.shuffle(\'' + itemId + '\');LibraryBrowser.closePlayMenu();">' + Globalize.translate('ButtonShuffle') + '</a></li>';
menuItems.push({
name: Globalize.translate('ButtonShuffle'),
id: 'shuffle',
ironIcon: 'shuffle'
});
}
if (showAddToPlaylist) {
html += '<li data-icon="false"><a href="#" onclick="PlaylistManager.showPanel([\'' + itemId + '\']);LibraryBrowser.closePlayMenu();">' + Globalize.translate('ButtonAddToPlaylist') + '</a></li>';
}
require(['actionsheet'], function () {
html += '</ul>';
ActionSheetElement.show({
items: menuItems,
positionTo: positionTo,
callback: function (id) {
html += '</div>';
switch (id) {
$($.mobile.activePage).append(html);
case 'play':
MediaController.play(itemId);
break;
case 'externalplayer':
LibraryBrowser.playInExternalPlayer(itemId);
break;
case 'resume':
MediaController.play({
ids: [itemId],
startPositionTicks: resumePositionTicks
});
break;
case 'queue':
MediaController.queue(itemId);
break;
case 'instantmix':
MediaController.instantMix(itemId);
break;
case 'shuffle':
MediaController.shuffle(itemId);
break;
default:
break;
}
}
});
$('.playFlyout').popup({ positionTo: positionTo || "window" }).trigger('create').popup("open").on("popupafterclose", function () {
$(this).off("popupafterclose").remove();
}).parents(".ui-popup-container");
});
},
closePlayMenu: function () {
@ -357,7 +399,7 @@
// The timeout allows the flyout to close
setTimeout(function () {
var msg = "<p>" + Globalize.translate('ConfirmDeleteItem') + "</p>";
var msg = Globalize.translate('ConfirmDeleteItem');
Dashboard.confirm(msg, Globalize.translate('HeaderDeleteItem'), function (result) {
@ -426,10 +468,10 @@
switch (id) {
case 'addtocollection':
BoxSetEditor.showPanel(itemId);
BoxSetEditor.showPanel([itemId]);
break;
case 'icon':
PlaylistManager.showPanel(itemId);
case 'playlist':
PlaylistManager.showPanel([itemId]);
break;
case 'delete':
LibraryBrowser.deleteItem(itemId);

View file

@ -1006,7 +1006,7 @@
msg += "<br/><br/>" + Globalize.translate('MessageConfirmItemGrouping');
Dashboard.confirm(msg, "Group Versions", function (confirmResult) {
Dashboard.confirm(msg, Globalize.translate('HeaderGroupVersions'), function (confirmResult) {
if (confirmResult) {

View file

@ -168,7 +168,7 @@
$('#btnPlay', page).on('click', function () {
var userdata = currentItem.UserData || {};
LibraryBrowser.showPlayMenu(this, currentItem.Id, currentItem.Type, false, currentItem.MediaType, userdata.PlaybackPositionTicks);
LibraryBrowser.showPlayMenu(null, currentItem.Id, currentItem.Type, false, currentItem.MediaType, userdata.PlaybackPositionTicks);
});
$('#btnEdit', page).on('click', function () {

View file

@ -378,7 +378,8 @@
dateOptions.push({
name: LibraryBrowser.getFutureDateText(start),
id: start.getTime()
id: start.getTime(),
ironIcon: 'today'
});
start.setDate(start.getDate() + 1);

View file

@ -112,7 +112,7 @@
var userdata = channel.UserData || {};
LibraryBrowser.showPlayMenu(this, channel.Id, channel.Type, false, channel.MediaType, userdata.PlaybackPositionTicks);
LibraryBrowser.showPlayMenu(null, channel.Id, channel.Type, false, channel.MediaType, userdata.PlaybackPositionTicks);
});
});

View file

@ -27,7 +27,7 @@
var mediaType = currentItem.MediaType;
LibraryBrowser.showPlayMenu(this, currentItem.Id, currentItem.Type, false, mediaType, userdata.PlaybackPositionTicks);
LibraryBrowser.showPlayMenu(null, currentItem.Id, currentItem.Type, false, mediaType, userdata.PlaybackPositionTicks);
}
function renderRecording(page, item) {

View file

@ -187,7 +187,7 @@
mediaType = "Audio";
}
LibraryBrowser.showPlayMenu(this, currentItem.Id, currentItem.Type, currentItem.IsFolder, mediaType, userdata.PlaybackPositionTicks);
LibraryBrowser.showPlayMenu(null, currentItem.Id, currentItem.Type, currentItem.IsFolder, mediaType, userdata.PlaybackPositionTicks);
});
$('.itemsContainer', page).on('needsrefresh', function () {

View file

@ -50,7 +50,9 @@ var Dashboard = {
$.event.special.swipe.verticalDistanceThreshold = 40;
$.mobile.loader.prototype.options.disabled = true;
//$.mobile.page.prototype.options.domCache = true;
$.mobile.page.prototype.options.domCache = true;
$.mobile.loadingMessage = false;
$.mobile.loader.prototype.options.html = "";
@ -570,7 +572,7 @@ var Dashboard = {
confirm: function (message, title, callback) {
// Cordova
if (navigator.notification && navigator.notification.alert && message.indexOf('<') == -1) {
if (navigator.notification && navigator.notification.confirm && message.indexOf('<') == -1) {
var buttonLabels = [Globalize.translate('ButtonOk'), Globalize.translate('ButtonCancel')];