Merge pull request #3318 from iainsaxonhome/feature/quit-app

Added Quit App to main menu
This commit is contained in:
Bill Thornton
2022-02-09 01:32:54 -05:00
committed by GitHub
6 changed files with 32 additions and 1 deletions
-1
View File
@@ -199,7 +199,6 @@ const supportedFeatures = function () {
if (browser.operaTv || browser.tizen || browser.orsay || browser.web0s) {
features.push('exit');
} else {
features.push('exitmenu');
features.push('plugins');
}
+9
View File
@@ -112,6 +112,15 @@
</div>
</div>
</a>
<a is="emby-linkbutton" data-ripple="false" href="#" style="display:block;padding:0;margin:0;" class="exitApp listItem-border">
<div class="listItem">
<span class="material-icons listItemIcon listItemIcon-transparent close"></span>
<div class="listItemBody">
<div class="listItemBodyText">${ButtonExitApp}</div>
</div>
</div>
</a>
</div>
</div>
</div>
+7
View File
@@ -17,6 +17,10 @@ export default function (view, params) {
window.NativeShell.openClientSettings();
});
view.querySelector('.exitApp').addEventListener('click', function () {
appHost.exit();
});
view.addEventListener('viewshow', function () {
// this page can also be used by admins to change user preferences from the user edit page
const userId = params.userId || Dashboard.getCurrentUserId();
@@ -33,6 +37,9 @@ export default function (view, params) {
const supportsClientSettings = appHost.supports('clientsettings');
page.querySelector('.clientSettings').classList.toggle('hide', !supportsClientSettings);
const supportsExitMenu = appHost.supports('exitmenu');
page.querySelector('.exitApp').classList.toggle('hide', !supportsExitMenu);
const supportsMultiServer = appHost.supports('multiserver');
page.querySelector('.selectServer').classList.toggle('hide', !supportsMultiServer);
+14
View File
@@ -302,6 +302,11 @@ import Headroom from 'headroom.js';
html += '<a is="emby-linkbutton" class="navMenuOption lnkMediaFolder btnSettings" data-itemid="settings" href="#"><span class="material-icons navMenuOptionIcon settings"></span><span class="navMenuOptionText">' + globalize.translate('Settings') + '</span></a>';
html += '<a is="emby-linkbutton" class="navMenuOption lnkMediaFolder btnLogout" data-itemid="logout" href="#"><span class="material-icons navMenuOptionIcon exit_to_app"></span><span class="navMenuOptionText">' + globalize.translate('ButtonSignOut') + '</span></a>';
if (appHost.supports('exitmenu')) {
html += '<a is="emby-linkbutton" class="navMenuOption lnkMediaFolder exitApp" data-itemid="exitapp" href="#"><span class="material-icons navMenuOptionIcon close"></span><span class="navMenuOptionText">' + globalize.translate('ButtonExitApp') + '</span></a>';
}
html += '</div>';
}
@@ -318,6 +323,11 @@ import Headroom from 'headroom.js';
btnSettings.addEventListener('click', onSettingsClick);
}
const btnExit = navDrawerScrollContainer.querySelector('.exitApp');
if (btnExit) {
btnExit.addEventListener('click', onExitAppClick);
}
const btnLogout = navDrawerScrollContainer.querySelector('.btnLogout');
if (btnLogout) {
btnLogout.addEventListener('click', onLogoutClick);
@@ -706,6 +716,10 @@ import Headroom from 'headroom.js';
Dashboard.navigate('mypreferencesmenu.html');
}
function onExitAppClick() {
appHost.exit();
}
function onLogoutClick() {
Dashboard.logout();
}
+1
View File
@@ -134,6 +134,7 @@
"ButtonShutdown": "Shutdown",
"ButtonSignIn": "Sign In",
"ButtonSignOut": "Sign Out",
"ButtonExitApp": "Exit Application",
"ButtonStart": "Start",
"ButtonStop": "Stop",
"ButtonSubmit": "Submit",
+1
View File
@@ -106,6 +106,7 @@
"ButtonShutdown": "Shutdown",
"ButtonSignIn": "Sign In",
"ButtonSignOut": "Sign Out",
"ButtonExitApp": "Exit Application",
"ButtonSplit": "Split",
"ButtonStart": "Start",
"ButtonStop": "Stop",