mirror of
https://github.com/jellyfin/jellyfin-web
synced 2025-03-30 19:56:21 +00:00
update connect
This commit is contained in:
parent
2f83f86ee8
commit
c7da2478bb
21 changed files with 72 additions and 28 deletions
BIN
dashboard-ui/css/images/clients/chromecast.png
Normal file
BIN
dashboard-ui/css/images/clients/chromecast.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 1.1 KiB |
|
@ -691,14 +691,13 @@
|
||||||
}
|
}
|
||||||
if (clientLowered == "chromecast") {
|
if (clientLowered == "chromecast") {
|
||||||
|
|
||||||
return "<img src='css/images/chromecast/ic_media_route_on_holo_light.png' />";
|
return "<img src='css/images/clients/chromecast.png' />";
|
||||||
}
|
}
|
||||||
if (clientLowered == "chrome companion") {
|
if (clientLowered == "chrome companion") {
|
||||||
|
|
||||||
return "<img src='css/images/clients/chrome_companion.png' />";
|
return "<img src='css/images/clients/chrome_companion.png' />";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
return null;
|
return null;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
function enableScrollX() {
|
function enableScrollX() {
|
||||||
return AppInfo.isTouchPreferred && AppInfo.enableAppLayouts;
|
return $.browser.mobile && AppInfo.enableAppLayouts;
|
||||||
}
|
}
|
||||||
|
|
||||||
function getThumbShape() {
|
function getThumbShape() {
|
||||||
|
|
|
@ -812,7 +812,8 @@
|
||||||
textlines.push(displayName);
|
textlines.push(displayName);
|
||||||
|
|
||||||
var verticalTextLines = 2;
|
var verticalTextLines = 2;
|
||||||
var enableSubLinks = !AppInfo.isTouchPreferred;
|
var enableSubLinks = !$.browser.mobile;
|
||||||
|
;
|
||||||
|
|
||||||
if (item.Type == 'Audio') {
|
if (item.Type == 'Audio') {
|
||||||
textlines.push(item.ArtistItems.map(function (a) {
|
textlines.push(item.ArtistItems.map(function (a) {
|
||||||
|
@ -1053,7 +1054,7 @@
|
||||||
|
|
||||||
var shapeWidth = screenWidth / imagesPerRow[currentShape];
|
var shapeWidth = screenWidth / imagesPerRow[currentShape];
|
||||||
|
|
||||||
if (!AppInfo.isTouchPreferred) {
|
if (!$.browser.mobile) {
|
||||||
|
|
||||||
shapeWidth = Math.round(shapeWidth / roundTo) * roundTo;
|
shapeWidth = Math.round(shapeWidth / roundTo) * roundTo;
|
||||||
}
|
}
|
||||||
|
|
|
@ -155,9 +155,12 @@
|
||||||
html += Globalize.translate('HeaderAdmin');
|
html += Globalize.translate('HeaderAdmin');
|
||||||
html += '</div>';
|
html += '</div>';
|
||||||
|
|
||||||
|
html += '<a class="sidebarLink lnkMediaFolder" data-itemid="dashboard" href="dashboard.html"><span class="fa fa-server sidebarLinkIcon"></span>' + Globalize.translate('ButtonManageServer') + '</a>';
|
||||||
html += '<a class="sidebarLink lnkMediaFolder editorViewMenu" data-itemid="editor" href="edititemmetadata.html"><span class="fa fa-edit sidebarLinkIcon"></span>' + Globalize.translate('ButtonMetadataManager') + '</a>';
|
html += '<a class="sidebarLink lnkMediaFolder editorViewMenu" data-itemid="editor" href="edititemmetadata.html"><span class="fa fa-edit sidebarLinkIcon"></span>' + Globalize.translate('ButtonMetadataManager') + '</a>';
|
||||||
|
|
||||||
|
if (!$.browser.mobile && !AppInfo.isTouchPreferred) {
|
||||||
html += '<a class="sidebarLink lnkMediaFolder" data-itemid="reports" href="reports.html"><span class="fa fa-bar-chart sidebarLinkIcon"></span>' + Globalize.translate('ButtonReports') + '</a>';
|
html += '<a class="sidebarLink lnkMediaFolder" data-itemid="reports" href="reports.html"><span class="fa fa-bar-chart sidebarLinkIcon"></span>' + Globalize.translate('ButtonReports') + '</a>';
|
||||||
html += '<a class="sidebarLink lnkMediaFolder" data-itemid="dashboard" href="dashboard.html"><span class="fa fa-server sidebarLinkIcon"></span>' + Globalize.translate('ButtonServer') + '</a>';
|
}
|
||||||
html += '</div>';
|
html += '</div>';
|
||||||
|
|
||||||
html += '<div class="sidebarDivider"></div>';
|
html += '<div class="sidebarDivider"></div>';
|
||||||
|
|
|
@ -11,7 +11,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
function enableScrollX() {
|
function enableScrollX() {
|
||||||
return AppInfo.isTouchPreferred && AppInfo.enableAppLayouts;
|
return $.browser.mobile && AppInfo.enableAppLayouts;
|
||||||
}
|
}
|
||||||
|
|
||||||
function getPortraitShape() {
|
function getPortraitShape() {
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
function enableScrollX() {
|
function enableScrollX() {
|
||||||
return AppInfo.isTouchPreferred && AppInfo.enableAppLayouts;
|
return $.browser.mobile && AppInfo.enableAppLayouts;
|
||||||
}
|
}
|
||||||
|
|
||||||
function getSquareShape() {
|
function getSquareShape() {
|
||||||
|
|
|
@ -91,8 +91,7 @@
|
||||||
showTitle: true,
|
showTitle: true,
|
||||||
coverImage: true,
|
coverImage: true,
|
||||||
centerImage: true,
|
centerImage: true,
|
||||||
textLines: getAdditionalTextLines,
|
textLines: getAdditionalTextLines
|
||||||
cardLayout: true
|
|
||||||
});
|
});
|
||||||
$('.itemsContainer', elem).html(html).lazyChildren();
|
$('.itemsContainer', elem).html(html).lazyChildren();
|
||||||
}
|
}
|
||||||
|
|
|
@ -1536,17 +1536,22 @@ var AppInfo = {};
|
||||||
|
|
||||||
if (isMobile) {
|
if (isMobile) {
|
||||||
AppInfo.hasLowImageBandwidth = true;
|
AppInfo.hasLowImageBandwidth = true;
|
||||||
AppInfo.forcedImageFormat = 'jpg';
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (isCordova) {
|
if (isCordova) {
|
||||||
AppInfo.enableBottomTabs = true;
|
AppInfo.enableBottomTabs = true;
|
||||||
AppInfo.cardMargin = 'mediumCardMargin';
|
AppInfo.cardMargin = 'mediumCardMargin';
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
if (isMobile) {
|
||||||
|
|
||||||
AppInfo.enableDetailPageChapters = false;
|
AppInfo.enableDetailPageChapters = false;
|
||||||
AppInfo.enableDetailsMenuImages = false;
|
AppInfo.enableDetailsMenuImages = false;
|
||||||
AppInfo.enableMovieHomeSuggestions = false;
|
AppInfo.enableMovieHomeSuggestions = false;
|
||||||
AppInfo.cardMargin = 'largeCardMargin';
|
AppInfo.cardMargin = 'largeCardMargin';
|
||||||
|
|
||||||
|
AppInfo.forcedImageFormat = 'jpg';
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
|
@ -1832,7 +1837,7 @@ var AppInfo = {};
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($.browser.safari) {
|
if ($.browser.safari) {
|
||||||
requirejs(['thirdparty/cordova/remotecontrols']);
|
requirejs(['thirdparty/cordova/remotecontrols', 'thirdparty/cordova/ios/orientation']);
|
||||||
}
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|
|
@ -106,7 +106,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
function enableScrollX() {
|
function enableScrollX() {
|
||||||
return AppInfo.isTouchPreferred && AppInfo.enableAppLayouts;
|
return $.browser.mobile && AppInfo.enableAppLayouts;
|
||||||
}
|
}
|
||||||
|
|
||||||
function getThumbShape() {
|
function getThumbShape() {
|
||||||
|
|
|
@ -372,11 +372,15 @@
|
||||||
throw new Error('connectionMode cannot be null');
|
throw new Error('connectionMode cannot be null');
|
||||||
}
|
}
|
||||||
|
|
||||||
logger.log('Begin updateServerInfo');
|
logger.log('Begin updateServerInfo. connectionMode: ' + connectionMode);
|
||||||
|
|
||||||
self.serverInfo(server);
|
self.serverInfo(server);
|
||||||
|
|
||||||
var serverUrl = MediaBrowser.ServerInfo.getServerAddress(connectionMode);
|
var serverUrl = MediaBrowser.ServerInfo.getServerAddress(server, connectionMode);
|
||||||
|
|
||||||
|
if (!serverUrl) {
|
||||||
|
throw new Error('serverUrl cannot be null. serverInfo: ' + JSON.stringify(server));
|
||||||
|
}
|
||||||
logger.log('Setting server address to ' + serverUrl);
|
logger.log('Setting server address to ' + serverUrl);
|
||||||
self.serverAddress(serverUrl);
|
self.serverAddress(serverUrl);
|
||||||
};
|
};
|
||||||
|
|
|
@ -769,7 +769,7 @@
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
var firstServer = servers[0];
|
var firstServer = servers.length ? servers[0] : null;
|
||||||
// See if we have any saved credentials and can auto sign in
|
// See if we have any saved credentials and can auto sign in
|
||||||
if (firstServer) {
|
if (firstServer) {
|
||||||
self.connectToServer(firstServer).done(function (result) {
|
self.connectToServer(firstServer).done(function (result) {
|
||||||
|
|
|
@ -75,6 +75,9 @@
|
||||||
if (server.RemoteAddress) {
|
if (server.RemoteAddress) {
|
||||||
existing.RemoteAddress = server.RemoteAddress;
|
existing.RemoteAddress = server.RemoteAddress;
|
||||||
}
|
}
|
||||||
|
if (server.ManualAddress) {
|
||||||
|
existing.ManualAddress = server.ManualAddress;
|
||||||
|
}
|
||||||
if (server.LocalAddress) {
|
if (server.LocalAddress) {
|
||||||
existing.LocalAddress = server.LocalAddress;
|
existing.LocalAddress = server.LocalAddress;
|
||||||
}
|
}
|
||||||
|
|
|
@ -48,9 +48,12 @@
|
||||||
var player = this;
|
var player = this;
|
||||||
|
|
||||||
if (player.isLocalPlayer && state.NowPlayingItem && state.NowPlayingItem.MediaType == 'Video') {
|
if (player.isLocalPlayer && state.NowPlayingItem && state.NowPlayingItem.MediaType == 'Video') {
|
||||||
|
|
||||||
|
if (!AppSettings.enableFullScreen()) {
|
||||||
AndroidFullScreen.showSystemUI(onSuccess, onError);
|
AndroidFullScreen.showSystemUI(onSuccess, onError);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function bindToPlayer(player) {
|
function bindToPlayer(player) {
|
||||||
|
|
||||||
|
|
|
@ -604,6 +604,9 @@
|
||||||
|
|
||||||
console.log('Will attempt to connect to Chromecast');
|
console.log('Will attempt to connect to Chromecast');
|
||||||
|
|
||||||
|
Dashboard.showModalLoadingMsg();
|
||||||
|
setTimeout(Dashboard.hideModalLoadingMsg, 3000);
|
||||||
|
|
||||||
if (device.isReady()) {
|
if (device.isReady()) {
|
||||||
console.log('Device is already ready, calling onDeviceReady');
|
console.log('Device is already ready, calling onDeviceReady');
|
||||||
onDeviceReady(device);
|
onDeviceReady(device);
|
||||||
|
|
|
@ -5,7 +5,7 @@
|
||||||
var manager = ConnectSDK.discoveryManager;
|
var manager = ConnectSDK.discoveryManager;
|
||||||
|
|
||||||
//manager.setPairingLevel(ConnectSDK.PairingLevel.OFF);
|
//manager.setPairingLevel(ConnectSDK.PairingLevel.OFF);
|
||||||
//manager.setAirPlayServiceMode(ConnectSDK.AirPlayServiceMode.Media);
|
manager.setAirPlayServiceMode(ConnectSDK.AirPlayServiceMode.Media);
|
||||||
|
|
||||||
// Show devices that support playing videos and pausing
|
// Show devices that support playing videos and pausing
|
||||||
//manager.setCapabilityFilters([
|
//manager.setCapabilityFilters([
|
||||||
|
|
2
dashboard-ui/thirdparty/cordova/iap.js
vendored
2
dashboard-ui/thirdparty/cordova/iap.js
vendored
|
@ -88,12 +88,10 @@
|
||||||
// show some logs and finish the transaction.
|
// show some logs and finish the transaction.
|
||||||
store.when(unlockAppProductId).approved(function (order) {
|
store.when(unlockAppProductId).approved(function (order) {
|
||||||
log('You just unlocked the FULL VERSION!');
|
log('You just unlocked the FULL VERSION!');
|
||||||
alert('approved');
|
|
||||||
order.finish();
|
order.finish();
|
||||||
});
|
});
|
||||||
|
|
||||||
store.when(unlockAppProductId).verified(function (p) {
|
store.when(unlockAppProductId).verified(function (p) {
|
||||||
alert('verified');
|
|
||||||
log("verified");
|
log("verified");
|
||||||
p.finish();
|
p.finish();
|
||||||
});
|
});
|
||||||
|
|
21
dashboard-ui/thirdparty/cordova/ios/orientation.js
vendored
Normal file
21
dashboard-ui/thirdparty/cordova/ios/orientation.js
vendored
Normal file
|
@ -0,0 +1,21 @@
|
||||||
|
(function () {
|
||||||
|
|
||||||
|
function forceScroll() {
|
||||||
|
|
||||||
|
var doc = $(document);
|
||||||
|
|
||||||
|
// Try to make it react quicker to the orientation change
|
||||||
|
doc.scrollTop(doc.scrollTop() + 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
function onOrientationChange() {
|
||||||
|
|
||||||
|
forceScroll();
|
||||||
|
for (var i = 0; i <= 500; i += 100) {
|
||||||
|
setTimeout(forceScroll, i);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
$(window).on('orientationchange', onOrientationChange);
|
||||||
|
|
||||||
|
})();
|
|
@ -21,8 +21,8 @@
|
||||||
|
|
||||||
var artist = parts.length == 1 ? '' : parts[0];
|
var artist = parts.length == 1 ? '' : parts[0];
|
||||||
var title = parts[parts.length - 1];
|
var title = parts[parts.length - 1];
|
||||||
var album = state.NowPlayingItem || '';
|
var album = state.NowPlayingItem.Album || '';
|
||||||
var duration = state.NowPlayingItem.RunTimeTicks ? (state.NowPlayingItem / 10000000) : 0;
|
var duration = state.NowPlayingItem.RunTimeTicks ? (state.NowPlayingItem.RunTimeTicks / 10000000) : 0;
|
||||||
var elapsedTime = playState.PositionTicks ? (playState.PositionTicks / 10000000) : 0;
|
var elapsedTime = playState.PositionTicks ? (playState.PositionTicks / 10000000) : 0;
|
||||||
|
|
||||||
var url = '';
|
var url = '';
|
||||||
|
|
4
dashboard-ui/thirdparty/velocity.min.js
vendored
Normal file
4
dashboard-ui/thirdparty/velocity.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
|
@ -8,7 +8,8 @@
|
||||||
background-position: center center;
|
background-position: center center;
|
||||||
background-size: 100% 100%;
|
background-size: 100% 100%;
|
||||||
background-repeat: no-repeat;
|
background-repeat: no-repeat;
|
||||||
z-index: 999999;
|
/* Need to make sure it is on top of content but underneath slideout panels */
|
||||||
|
z-index: 1097;
|
||||||
}
|
}
|
||||||
|
|
||||||
.voiceInputHelpInner {
|
.voiceInputHelpInner {
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue