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

update fullscreen toggle

This commit is contained in:
Luke Pulverenti 2017-01-04 23:01:02 -05:00
parent 1224340c18
commit 17c23b1c8c
4 changed files with 48 additions and 19 deletions

View file

@ -14,12 +14,12 @@
}, },
"devDependencies": {}, "devDependencies": {},
"ignore": [], "ignore": [],
"version": "1.4.442", "version": "1.4.443",
"_release": "1.4.442", "_release": "1.4.443",
"_resolution": { "_resolution": {
"type": "version", "type": "version",
"tag": "1.4.442", "tag": "1.4.443",
"commit": "f4fbcdd53e93fcc3c5a8ce58c5f8ba63be77a4ee" "commit": "06bd97079047cdcad2a97f6475fe7022bc1c819f"
}, },
"_source": "https://github.com/MediaBrowser/emby-webcomponents.git", "_source": "https://github.com/MediaBrowser/emby-webcomponents.git",
"_target": "^1.2.1", "_target": "^1.2.1",

View file

@ -207,7 +207,7 @@ define(['browser', 'pluginManager', 'events', 'apphost', 'loading', 'playbackMan
hls.on(Hls.Events.ERROR, function (event, data) { hls.on(Hls.Events.ERROR, function (event, data) {
console.log('HLS Error: Type: ' + data.type + ' Details: ' + (data.details || '') + ' Fatal: ' + data.fatal); console.log('HLS Error: Type: ' + data.type + ' Details: ' + (data.details || '') + ' Fatal: ' + (data.fatal || false));
if (data.fatal) { if (data.fatal) {
switch (data.type) { switch (data.type) {

View file

@ -1,4 +1,4 @@
define(['events', 'datetime', 'appSettings', 'pluginManager', 'userSettings', 'globalize', 'connectionManager', 'loading', 'serverNotifications'], function (events, datetime, appSettings, pluginManager, userSettings, globalize, connectionManager, loading, serverNotifications) { define(['events', 'datetime', 'appSettings', 'pluginManager', 'userSettings', 'globalize', 'connectionManager', 'loading', 'serverNotifications', 'apphost', 'fullscreenManager'], function (events, datetime, appSettings, pluginManager, userSettings, globalize, connectionManager, loading, serverNotifications, apphost, fullscreenManager) {
'use strict'; 'use strict';
function enableLocalPlaylistManagement(player) { function enableLocalPlaylistManagement(player) {
@ -180,7 +180,7 @@ define(['events', 'datetime', 'appSettings', 'pluginManager', 'userSettings', 'g
if (player.isLocalPlayer) { if (player.isLocalPlayer) {
// Full list // Full list
// https://github.com/MediaBrowser/MediaBrowser/blob/master/MediaBrowser.Model/Session/GeneralCommand.cs // https://github.com/MediaBrowser/MediaBrowser/blob/master/MediaBrowser.Model/Session/GeneralCommand.cs
return [ var list = [
"GoHome", "GoHome",
"GoToSettings", "GoToSettings",
"VolumeUp", "VolumeUp",
@ -197,6 +197,12 @@ define(['events', 'datetime', 'appSettings', 'pluginManager', 'userSettings', 'g
"DisplayMessage", "DisplayMessage",
"SetRepeatMode" "SetRepeatMode"
]; ];
if (apphost.supports('fullscreenchange')) {
list.push('ToggleFullscreen');
}
return list;
} }
throw new Error('player must define supported commands'); throw new Error('player must define supported commands');
@ -681,6 +687,30 @@ define(['events', 'datetime', 'appSettings', 'pluginManager', 'userSettings', 'g
}); });
}; };
self.isFullscreen = function (player) {
player = player || currentPlayer;
if (!player.isLocalPlayer || player.isFullscreen) {
return player.isFullscreen();
}
return fullscreenManager.isFullScreen();
};
self.toggleFullscreen = function(player) {
player = player || currentPlayer;
if (!player.isLocalPlayer || player.toggleFulscreen) {
return player.toggleFulscreen();
}
if (fullscreenManager.isFullScreen()) {
fullscreenManager.exitFullscreen();
} else {
fullscreenManager.requestFullscreen();
}
};
self.getSubtitleStreamIndex = function (player) { self.getSubtitleStreamIndex = function (player) {
player = player || currentPlayer; player = player || currentPlayer;

View file

@ -1,4 +1,4 @@
define(['playbackManager', 'dom', 'inputmanager', 'datetime', 'itemHelper', 'mediaInfo', 'focusManager', 'imageLoader', 'scrollHelper', 'events', 'connectionManager', 'browser', 'globalize', 'apphost', 'fullscreenManager', 'scrollStyles', 'emby-slider'], function (playbackManager, dom, inputManager, datetime, itemHelper, mediaInfo, focusManager, imageLoader, scrollHelper, events, connectionManager, browser, globalize, appHost, fullscreenManager) { define(['playbackManager', 'dom', 'inputmanager', 'datetime', 'itemHelper', 'mediaInfo', 'focusManager', 'imageLoader', 'scrollHelper', 'events', 'connectionManager', 'browser', 'globalize', 'apphost', 'scrollStyles', 'emby-slider'], function (playbackManager, dom, inputManager, datetime, itemHelper, mediaInfo, focusManager, imageLoader, scrollHelper, events, connectionManager, browser, globalize, appHost) {
'use strict'; 'use strict';
function seriesImageUrl(item, options) { function seriesImageUrl(item, options) {
@ -379,7 +379,7 @@
} }
function updateFullscreenIcon() { function updateFullscreenIcon() {
if (fullscreenManager.isFullScreen()) { if (playbackManager.isFullscreen(currentPlayer)) {
view.querySelector('.btnFullscreen i').innerHTML = ''; view.querySelector('.btnFullscreen i').innerHTML = '';
} else { } else {
view.querySelector('.btnFullscreen i').innerHTML = ''; view.querySelector('.btnFullscreen i').innerHTML = '';
@ -403,7 +403,6 @@
showOsd(); showOsd();
inputManager.on(window, onInputCommand); inputManager.on(window, onInputCommand);
updateFullscreenIcon();
}); });
view.addEventListener('viewbeforehide', function () { view.addEventListener('viewbeforehide', function () {
@ -421,10 +420,6 @@
view.querySelector('.btnCast').classList.remove('hide'); view.querySelector('.btnCast').classList.remove('hide');
} }
if (appHost.supports('fullscreenchange')) {
view.querySelector('.btnFullscreen').classList.remove('hide');
}
view.querySelector('.btnCast').addEventListener('click', function () { view.querySelector('.btnCast').addEventListener('click', function () {
var btn = this; var btn = this;
require(['playerSelectionMenu'], function (playerSelectionMenu) { require(['playerSelectionMenu'], function (playerSelectionMenu) {
@ -433,11 +428,7 @@
}); });
view.querySelector('.btnFullscreen').addEventListener('click', function () { view.querySelector('.btnFullscreen').addEventListener('click', function () {
if (fullscreenManager.isFullScreen()) { playbackManager.toggleFullscreen(currentPlayer);
fullscreenManager.exitFullscreen();
} else {
fullscreenManager.requestFullscreen();
}
}); });
view.querySelector('.btnSettings').addEventListener('click', onSettingsButtonClick); view.querySelector('.btnSettings').addEventListener('click', onSettingsButtonClick);
@ -635,6 +626,14 @@
} else { } else {
view.querySelector('.btnSettings').classList.add('hide'); view.querySelector('.btnSettings').classList.add('hide');
} }
if (supportedCommands.indexOf('ToggleFullscreen') === -1) {
view.querySelector('.btnFullscreen').classList.add('hide');
} else {
view.querySelector('.btnFullscreen').classList.remove('hide');
}
updateFullscreenIcon();
} }
function updateTimeDisplay(positionTicks, runtimeTicks) { function updateTimeDisplay(positionTicks, runtimeTicks) {