diff --git a/src/components/apphost.js b/src/components/apphost.js index 36feb896f3..d6596b7c62 100644 --- a/src/components/apphost.js +++ b/src/components/apphost.js @@ -275,7 +275,7 @@ const supportedFeatures = function () { */ function doExit() { try { - if (window.NativeShell) { + if (window.NativeShell && window.NativeShell.AppHost.exit) { window.NativeShell.AppHost.exit(); } else if (browser.tizen) { tizen.application.getCurrentApplication().exit(); @@ -360,10 +360,12 @@ export const appHost = { }; }, deviceName: function () { - return window.NativeShell ? window.NativeShell.AppHost.deviceName() : getDeviceName(); + return window.NativeShell && window.NativeShell.AppHost.deviceName + ? window.NativeShell.AppHost.deviceName() : getDeviceName(); }, deviceId: function () { - return window.NativeShell ? window.NativeShell.AppHost.deviceId() : getDeviceId(); + return window.NativeShell && window.NativeShell.AppHost.deviceId + ? window.NativeShell.AppHost.deviceId() : getDeviceId(); }, appName: function () { return window.NativeShell ? window.NativeShell.AppHost.appName() : appName; diff --git a/src/components/pluginManager.js b/src/components/pluginManager.js index 985b76725f..d4424c3021 100644 --- a/src/components/pluginManager.js +++ b/src/components/pluginManager.js @@ -3,6 +3,8 @@ import globalize from '../scripts/globalize'; import loading from './loading/loading'; import appSettings from '../scripts/settings/appSettings'; import { playbackManager } from './playback/playbackmanager'; +import { appHost } from '../components/apphost'; +import { appRouter } from '../components/appRouter'; /* eslint-disable indent */ @@ -90,7 +92,10 @@ import { playbackManager } from './playback/playbackmanager'; events: Events, loading, appSettings, - playbackManager + playbackManager, + globalize, + appHost, + appRouter }); } else { console.debug(`Loading plugin (via dynamic import): ${pluginSpec}`); diff --git a/src/scripts/settings/webSettings.js b/src/scripts/settings/webSettings.js index f985cdb118..e88e65ad8f 100644 --- a/src/scripts/settings/webSettings.js +++ b/src/scripts/settings/webSettings.js @@ -79,15 +79,6 @@ export function getMultiServer() { }); } -export function getIgnorePlayPermission() { - return getConfig().then(config => { - return !!config.ignorePlayPermission; - }).catch(error => { - console.log('cannot get web config:', error); - return false; - }); -} - export function getServers() { return getConfig().then(config => { return config.servers || []; diff --git a/src/scripts/shell.js b/src/scripts/shell.js index 006d0433ff..9a0ac76811 100644 --- a/src/scripts/shell.js +++ b/src/scripts/shell.js @@ -1,10 +1,14 @@ // TODO: This seems like a good candidate for deprecation export default { enableFullscreen: function() { - window.NativeShell?.enableFullscreen(); + if (window.NativeShell && window.NativeShell.enableFullscreen) { + window.NativeShell.enableFullscreen(); + } }, disableFullscreen: function() { - window.NativeShell?.disableFullscreen(); + if (window.NativeShell && window.NativeShell.disableFullscreen) { + window.NativeShell.disableFullscreen(); + } }, openUrl: function(url, target) { if (window.NativeShell) { @@ -14,17 +18,23 @@ export default { } }, updateMediaSession(mediaInfo) { - window.NativeShell?.updateMediaSession(mediaInfo); + if (window.NativeShell && window.NativeShell.updateMediaSession) { + window.NativeShell.updateMediaSession(mediaInfo); + } }, hideMediaSession() { - window.NativeShell?.hideMediaSession(); + if (window.NativeShell && window.NativeShell.hideMediaSession) { + window.NativeShell.hideMediaSession(); + } }, /** * Notify the NativeShell about volume level changes. * Useful for e.g. remote playback. */ updateVolumeLevel(volume) { - window.NativeShell?.updateVolumeLevel(volume); + if (window.NativeShell && window.NativeShell.updateVolumeLevel) { + window.NativeShell.updateVolumeLevel(volume); + } }, /** * Download specified files with NativeShell if possible