From 25cf88d0f82bd80fde05020bc8fd0b2489ceea87 Mon Sep 17 00:00:00 2001 From: dkanada Date: Wed, 27 Mar 2019 15:35:54 -0700 Subject: [PATCH 01/15] remove padding from progress slider --- src/components/emby-slider/emby-slider.css | 2 -- 1 file changed, 2 deletions(-) diff --git a/src/components/emby-slider/emby-slider.css b/src/components/emby-slider/emby-slider.css index 179270e22f..4a04571414 100644 --- a/src/components/emby-slider/emby-slider.css +++ b/src/components/emby-slider/emby-slider.css @@ -158,8 +158,6 @@ _:-ms-input-placeholder { } .mdl-slider-background-flex-container { - padding-left: 10px; - padding-right: 10px; width: 100%; box-sizing: border-box; margin-top: -.05em; From b1eae70caed05c1968786227a0837d8ff5f38222 Mon Sep 17 00:00:00 2001 From: dkanada Date: Wed, 27 Mar 2019 15:36:28 -0700 Subject: [PATCH 02/15] add back cover art on mobile devices --- .../nowplayingbar/nowplayingbar.css | 27 +++---------------- 1 file changed, 3 insertions(+), 24 deletions(-) diff --git a/src/components/nowplayingbar/nowplayingbar.css b/src/components/nowplayingbar/nowplayingbar.css index 80f078d880..14b08a20a3 100644 --- a/src/components/nowplayingbar/nowplayingbar.css +++ b/src/components/nowplayingbar/nowplayingbar.css @@ -119,7 +119,6 @@ height: 1.2em !important; } - @media all and (max-width: 70em) { .nowPlayingBarRight .nowPlayingBarUserDataButtons { @@ -133,52 +132,32 @@ } } - @media all and (max-width: 62em) { - .nowPlayingBarCenter .nowPlayingBarCurrentTime { display: none !important; } - } @media all and (max-width: 56em) { - .nowPlayingBarCenter { display: none !important; } - } - @media all and (min-width: 56em) { - .nowPlayingBarRight .playPauseButton { display: none; } - -} - -@media all and (max-width: 40em) { - - .nowPlayingBarInfoContainer .nowPlayingImage { - display: none; - } - } @media all and (max-width: 36em) { - .nowPlayingBarRight .nowPlayingBarVolumeSliderContainer { display: none !important; } - } @media all and (max-width: 24em) { - - .nowPlayingBar .muteButton, .nowPlayingBar .unmuteButton { - display: none; - } - + .nowPlayingBar .muteButton, .nowPlayingBar .unmuteButton { + display: none; + } } From 16faeb05fe408f7c0576f7ff28609decb3a34093 Mon Sep 17 00:00:00 2001 From: dkanada Date: Thu, 28 Mar 2019 04:18:07 -0700 Subject: [PATCH 03/15] remove duplicate button for user preferences --- src/scripts/librarymenu.js | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/src/scripts/librarymenu.js b/src/scripts/librarymenu.js index 9f21b81c16..a687d3a7a8 100644 --- a/src/scripts/librarymenu.js +++ b/src/scripts/librarymenu.js @@ -193,12 +193,11 @@ define(["dom", "layoutManager", "inputManager", "connectionManager", "events", " html += ""; } - html += '
'; - html += '

'; - html += globalize.translate("HeaderUser"); - html += "

"; if (user.localUser) { - html += 'settings' + globalize.translate("ButtonSettings") + ""; + html += '
'; + html += '

'; + html += globalize.translate("HeaderUser"); + html += "

"; if (appHost.supports("multiserver")) { html += 'wifi' + globalize.translate("ButtonSelectServer") + ""; } From 658d77c15f11c8a1770d1039586843503b083f36 Mon Sep 17 00:00:00 2001 From: dkanada Date: Thu, 28 Mar 2019 04:45:05 -0700 Subject: [PATCH 04/15] make dashboard header uniform size and modify card hover style --- src/components/cardbuilder/card.css | 20 ++++++++------------ src/css/dashboard.css | 4 ---- 2 files changed, 8 insertions(+), 16 deletions(-) diff --git a/src/components/cardbuilder/card.css b/src/components/cardbuilder/card.css index ebdeffe1df..64ce965dae 100644 --- a/src/components/cardbuilder/card.css +++ b/src/components/cardbuilder/card.css @@ -46,9 +46,9 @@ button { flex-wrap: wrap; } - .vertical-wrap.centered { - justify-content: center; - } +.vertical-wrap.centered { + justify-content: center; +} .cardScalable { position: relative; @@ -226,10 +226,6 @@ button { box-shadow: 0 0.0725em 0.29em 0 rgba(0, 0, 0, 0.37); } -/*.card:focus .cardContent-shadow { - box-shadow: 0 .63em 1.26em rgba(0, 0, 0, 0.37); -}*/ - .cardImageContainer { display: flex; } @@ -767,7 +763,7 @@ button { } .cardOverlayContainer { - background: radial-gradient(farthest-corner at 50% 50%,rgba(30,30,30,.5) 50%,#2c2c2c 100%); + background: rgba(0,0,0,0.5); opacity: 0; transition: opacity .2s; position: absolute; @@ -810,7 +806,7 @@ button { left: 50%; } - .cardOverlayFab-primary i { - border: .07em solid rgba(255,255,255,.9); - color: #fff; - } +.cardOverlayFab-primary i { + border: .07em solid rgba(255,255,255,.9); + color: #fff; +} diff --git a/src/css/dashboard.css b/src/css/dashboard.css index 6568f7637b..47ccacf1c5 100644 --- a/src/css/dashboard.css +++ b/src/css/dashboard.css @@ -63,10 +63,6 @@ progress[aria-valuenow]:before { } } -.dashboardDocument { - font-size: 94.1% -} - .dashboardDocument .dashboardEntryHeaderButton, .dashboardDocument .lnkManageServer { display: none !important From ba1219f78b678c302719ba71b19214ff5cb88eb8 Mon Sep 17 00:00:00 2001 From: dkanada Date: Thu, 28 Mar 2019 04:53:34 -0700 Subject: [PATCH 05/15] remove duplicate button to home screen settings --- src/components/homesections/homesections.js | 47 --------------------- 1 file changed, 47 deletions(-) diff --git a/src/components/homesections/homesections.js b/src/components/homesections/homesections.js index 0c30a015cc..2f4f51e398 100644 --- a/src/components/homesections/homesections.js +++ b/src/components/homesections/homesections.js @@ -183,28 +183,19 @@ define(['connectionManager', 'cardBuilder', 'appSettings', 'dom', 'apphost', 'la } function getLibraryButtonsHtml(items) { - var html = ""; html += '
'; html += '
'; html += '

' + globalize.translate('HeaderMyMedia') + '

'; - - if (!layoutManager.tv) { - html += ''; - } - html += '
'; html += '
'; // "My Library" backgrounds for (var i = 0, length = items.length; i < length; i++) { - var item = items[i]; - var icon; - switch (item.CollectionType) { case "movies": icon = "local_movies"; @@ -258,7 +249,6 @@ define(['connectionManager', 'cardBuilder', 'appSettings', 'dom', 'apphost', 'la var html = getLibraryButtonsHtml(userViews); elem.innerHTML = html; - bindHomeScreenSettingsIcon(elem, apiClient, user.Id, userSettings); imageLoader.lazyChildren(elem); } @@ -410,42 +400,11 @@ define(['connectionManager', 'cardBuilder', 'appSettings', 'dom', 'apphost', 'la } function getRequirePromise(deps) { - return new Promise(function (resolve, reject) { - require(deps, resolve); }); } - function showHomeScreenSettings(elem, options) { - return getRequirePromise(['homescreenSettingsDialog']).then(function (homescreenSettingsDialog) { - - return homescreenSettingsDialog.show(options).then(function () { - - dom.parentWithClass(elem, 'homeSectionsContainer').dispatchEvent(new CustomEvent('settingschange', { - cancelable: false - })); - }); - }); - } - - function bindHomeScreenSettingsIcon(elem, apiClient, userId, userSettings) { - - var btnHomeScreenSettings = elem.querySelector('.btnHomeScreenSettings'); - if (!btnHomeScreenSettings) { - return; - } - - btnHomeScreenSettings.addEventListener('click', function () { - showHomeScreenSettings(elem, { - serverId: apiClient.serverId(), - userId: userId, - userSettings: userSettings - - }); - }); - } - function loadLibraryTiles(elem, apiClient, user, userSettings, shape, userViews, allSections) { elem.classList.remove('verticalSection'); @@ -460,11 +419,6 @@ define(['connectionManager', 'cardBuilder', 'appSettings', 'dom', 'apphost', 'la html += '
'; html += '

' + globalize.translate('HeaderMyMedia') + '

'; - - if (!layoutManager.tv) { - html += ''; - } - html += '
'; if (scrollX) { @@ -492,7 +446,6 @@ define(['connectionManager', 'cardBuilder', 'appSettings', 'dom', 'apphost', 'la } elem.innerHTML = html; - bindHomeScreenSettingsIcon(elem, apiClient, user.Id, userSettings); imageLoader.lazyChildren(elem); } From 66d12b6d2dcaea6c94b1fed428392bc31134c355 Mon Sep 17 00:00:00 2001 From: dkanada Date: Thu, 28 Mar 2019 12:31:11 -0700 Subject: [PATCH 06/15] match user menu layout with navigation bar --- src/controllers/mypreferencescommon.js | 2 +- src/mypreferencesmenu.html | 47 ++++++++++++++------------ 2 files changed, 26 insertions(+), 23 deletions(-) diff --git a/src/controllers/mypreferencescommon.js b/src/controllers/mypreferencescommon.js index e52fcc1b34..51e9c10869 100644 --- a/src/controllers/mypreferencescommon.js +++ b/src/controllers/mypreferencescommon.js @@ -31,7 +31,7 @@ define(["apphost", "connectionManager", "listViewStyle", "emby-button"], functio }); Dashboard.getCurrentUser().then(function(user) { - page.querySelector(".headerUser").innerHTML = user.Name; + page.querySelector(".headerUsername").innerHTML = user.Name; if (user.Policy.IsAdministrator) { page.querySelector(".adminSection").classList.remove("hide"); } else { diff --git a/src/mypreferencesmenu.html b/src/mypreferencesmenu.html index 7269fe3521..b9c02fc02c 100644 --- a/src/mypreferencesmenu.html +++ b/src/mypreferencesmenu.html @@ -3,6 +3,7 @@ \ No newline at end of file From 450a72792ffa0fd3314562b54457934294af0c74 Mon Sep 17 00:00:00 2001 From: dkanada Date: Thu, 28 Mar 2019 13:09:14 -0700 Subject: [PATCH 07/15] update logindefault to match other icons --- src/img/logindefault.png | Bin 1327 -> 3571 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/src/img/logindefault.png b/src/img/logindefault.png index d88cc2805f1b2531593fc17c1da4af1f257bd41b..0453f2489704e37852b32a4d0e0a50e01dca422a 100644 GIT binary patch literal 3571 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 From 3eec1cf2f76650b21d8ed6d9c7ee50e63f4cf5be Mon Sep 17 00:00:00 2001 From: dkanada Date: Fri, 29 Mar 2019 15:07:26 -0700 Subject: [PATCH 08/15] move device routes to the usual location --- src/components/cardbuilder/cardbuilder.js | 7 ------- src/components/itemhelper.js | 7 ++----- .../userdatabuttons/emby-playstatebutton.js | 16 ---------------- src/controllers/devices.js | 4 ++-- src/dashboard.html | 2 +- src/{devices => }/device.html | 0 src/{devices => }/devices.html | 0 src/scripts/librarymenu.js | 2 +- src/scripts/routes.js | 4 ++-- 9 files changed, 8 insertions(+), 34 deletions(-) rename src/{devices => }/device.html (100%) rename src/{devices => }/devices.html (100%) diff --git a/src/components/cardbuilder/cardbuilder.js b/src/components/cardbuilder/cardbuilder.js index 2885d7f75d..d1e502e766 100644 --- a/src/components/cardbuilder/cardbuilder.js +++ b/src/components/cardbuilder/cardbuilder.js @@ -1537,18 +1537,11 @@ define(['datetime', 'imageLoader', 'connectionManager', 'itemHelper', 'focusMana var btnCssClass = 'cardOverlayButton cardOverlayButton-hover itemAction'; if (playbackManager.canPlay(item)) { - html += ''; } html += '
'; - //if (itemHelper.canEdit({ Policy: { IsAdministrator: true } }, item)) { - - // //require(['emby-playstatebutton']); - // html += ''; - //} - var userData = item.UserData || {}; if (itemHelper.canMarkPlayed(item)) { diff --git a/src/components/itemhelper.js b/src/components/itemhelper.js index 19845ca4a0..f8bdb28ac5 100644 --- a/src/components/itemhelper.js +++ b/src/components/itemhelper.js @@ -16,16 +16,13 @@ define(['apphost', 'globalize'], function (appHost, globalize) { var name = ((item.Type === 'Program' || item.Type === 'Recording') && (item.IsSeries || item.EpisodeTitle) ? item.EpisodeTitle : item.Name) || ''; if (item.Type === "TvChannel") { - if (item.ChannelNumber) { return item.ChannelNumber + ' ' + name; } return name; } - if (/*options.isInlineSpecial &&*/ item.Type === "Episode" && item.ParentIndexNumber === 0) { - + if (item.Type === "Episode" && item.ParentIndexNumber === 0) { name = globalize.translate('ValueSpecialEpisodeName', name); - } else if ((item.Type === "Episode" || item.Type === 'Program') && item.IndexNumber != null && item.ParentIndexNumber != null && options.includeIndexNumber !== false) { var displayIndexNumber = item.IndexNumber; @@ -104,7 +101,7 @@ define(['apphost', 'globalize'], function (appHost, globalize) { var itemType = item.Type; - if (itemType === "UserRootFolder" || /*itemType == "CollectionFolder" ||*/ itemType === "UserView") { + if (itemType === "UserRootFolder" || itemType === "UserView") { return false; } diff --git a/src/components/userdatabuttons/emby-playstatebutton.js b/src/components/userdatabuttons/emby-playstatebutton.js index 7480cd0d7e..eaed128933 100644 --- a/src/components/userdatabuttons/emby-playstatebutton.js +++ b/src/components/userdatabuttons/emby-playstatebutton.js @@ -2,14 +2,12 @@ define(['connectionManager', 'serverNotifications', 'events', 'globalize', 'emby 'use strict'; function addNotificationEvent(instance, name, handler) { - var localHandler = handler.bind(instance); events.on(serverNotifications, name, localHandler); instance[name] = localHandler; } function removeNotificationEvent(instance, name) { - var handler = instance[name]; if (handler) { events.off(serverNotifications, name, handler); @@ -25,31 +23,22 @@ define(['connectionManager', 'serverNotifications', 'events', 'globalize', 'emby var apiClient = connectionManager.getApiClient(serverId); if (!button.classList.contains('playstatebutton-played')) { - apiClient.markPlayed(apiClient.getCurrentUserId(), id, new Date()); - setState(button, true); - } else { - apiClient.markUnplayed(apiClient.getCurrentUserId(), id, new Date()); - setState(button, false); } } function onUserDataChanged(e, apiClient, userData) { - var button = this; - if (userData.ItemId === button.getAttribute('data-id')) { - setState(button, userData.Played); } } function setState(button, played, updateAttribute) { - var icon = button.iconElement; if (!icon) { button.iconElement = button.querySelector('i'); @@ -57,18 +46,13 @@ define(['connectionManager', 'serverNotifications', 'events', 'globalize', 'emby } if (played) { - button.classList.add('playstatebutton-played'); - if (icon) { icon.classList.add('playstatebutton-icon-played'); icon.classList.remove('playstatebutton-icon-unplayed'); } - } else { - button.classList.remove('playstatebutton-played'); - if (icon) { icon.classList.remove('playstatebutton-icon-played'); icon.classList.add('playstatebutton-icon-unplayed'); diff --git a/src/controllers/devices.js b/src/controllers/devices.js index e4c2f6b44b..d85b6e9017 100644 --- a/src/controllers/devices.js +++ b/src/controllers/devices.js @@ -43,7 +43,7 @@ define(["loading", "dom", "libraryMenu", "globalize", "humanedate", "emby-button callback: function(id) { switch (id) { case "open": - Dashboard.navigate("devices/device.html?id=" + deviceId); + Dashboard.navigate("device.html?id=" + deviceId); break; case "delete": deleteDevice(view, deviceId) @@ -57,7 +57,7 @@ define(["loading", "dom", "libraryMenu", "globalize", "humanedate", "emby-button var html = ""; html += devices.map(function(device) { var deviceHtml = ""; - deviceHtml += "
", deviceHtml += '
', deviceHtml += '
', deviceHtml += '
', deviceHtml += ''; + deviceHtml += "
", deviceHtml += '
', deviceHtml += '", deviceHtml += '
', (canEdit || canDelete(device.Id)) && (deviceHtml += '
', deviceHtml += '', deviceHtml += "
"), deviceHtml += "
", deviceHtml += device.Name, deviceHtml += "
", deviceHtml += "
", deviceHtml += device.AppName + " " + device.AppVersion, deviceHtml += "
", deviceHtml += "
", device.LastUserName && (deviceHtml += device.LastUserName, deviceHtml += ", " + humane_date(device.DateLastActivity)), deviceHtml += " ", deviceHtml += "
", deviceHtml += "
", deviceHtml += "
", deviceHtml += "
" }).join(""), page.querySelector(".devicesList").innerHTML = html diff --git a/src/dashboard.html b/src/dashboard.html index ba973280ef..71c4bf5e15 100644 --- a/src/dashboard.html +++ b/src/dashboard.html @@ -33,7 +33,7 @@
- +

${HeaderActiveDevices}

diff --git a/src/devices/device.html b/src/device.html similarity index 100% rename from src/devices/device.html rename to src/device.html diff --git a/src/devices/devices.html b/src/devices.html similarity index 100% rename from src/devices/devices.html rename to src/devices.html diff --git a/src/scripts/librarymenu.js b/src/scripts/librarymenu.js index a687d3a7a8..ba8b2d306a 100644 --- a/src/scripts/librarymenu.js +++ b/src/scripts/librarymenu.js @@ -307,7 +307,7 @@ define(["dom", "layoutManager", "inputManager", "connectionManager", "events", " }); links.push({ name: globalize.translate("TabDevices"), - href: "devices/devices.html", + href: "devices.html", pageIds: ["devicesPage", "devicePage"], icon: "devices" }); diff --git a/src/scripts/routes.js b/src/scripts/routes.js index bd735877f3..f2f66ad264 100644 --- a/src/scripts/routes.js +++ b/src/scripts/routes.js @@ -62,13 +62,13 @@ define([ controller: "dashboardhosting" }); defineRoute({ - path: "/devices/devices.html", + path: "/devices.html", autoFocus: false, roles: "admin", controller: "devices" }); defineRoute({ - path: "/devices/device.html", + path: "/device.html", autoFocus: false, roles: "admin", controller: "device" From 3f4b7502885d8a714f7c56c0de07ccd9f5f5ca5d Mon Sep 17 00:00:00 2001 From: dkanada Date: Fri, 29 Mar 2019 15:09:51 -0700 Subject: [PATCH 09/15] move list page to the usual location --- src/components/favoriteitems.js | 2 +- src/{list => }/list.html | 8 ++------ src/livetv.html | 12 ++++++------ src/scripts/itembynamedetailpage.js | 2 +- src/scripts/livetvrecordings.js | 2 +- src/scripts/routes.js | 2 +- src/scripts/site.js | 24 ++++++++++++------------ 7 files changed, 24 insertions(+), 28 deletions(-) rename src/{list => }/list.html (98%) diff --git a/src/components/favoriteitems.js b/src/components/favoriteitems.js index fa7b5aee16..e50bc1c532 100644 --- a/src/components/favoriteitems.js +++ b/src/components/favoriteitems.js @@ -111,7 +111,7 @@ define(["loading", "libraryBrowser", "cardBuilder", "dom", "apphost", "imageLoad var html = ""; if (result.Items.length) { if (html += '
', !layoutManager.tv && options.Limit && result.Items.length >= options.Limit) { - html += '', html += '

', html += globalize.translate(section.name), html += "

", html += '', html += "
" + html += '', html += '

', html += globalize.translate(section.name), html += "

", html += '', html += "
" } else html += '

' + globalize.translate(section.name) + "

"; if (html += "
", enableScrollX()) { var scrollXClass = "scrollX hiddenScrollX"; diff --git a/src/list/list.html b/src/list.html similarity index 98% rename from src/list/list.html rename to src/list.html index 929c1596fb..5161704249 100644 --- a/src/list/list.html +++ b/src/list.html @@ -1,10 +1,7 @@
- -
- - +
+
-
-
diff --git a/src/livetv.html b/src/livetv.html index b4ef35d9bd..2bc99b2b80 100644 --- a/src/livetv.html +++ b/src/livetv.html @@ -5,7 +5,7 @@
- +

${HeaderOnNow}

@@ -14,7 +14,7 @@
- +

${TabShows}

@@ -23,7 +23,7 @@
- +

${HeaderMovies}

@@ -32,7 +32,7 @@
- +

${Sports}

@@ -41,7 +41,7 @@
- +

${HeaderForKids}

@@ -50,7 +50,7 @@
- +

${News}

diff --git a/src/scripts/itembynamedetailpage.js b/src/scripts/itembynamedetailpage.js index 727532a386..a80792d175 100644 --- a/src/scripts/itembynamedetailpage.js +++ b/src/scripts/itembynamedetailpage.js @@ -210,7 +210,7 @@ define(["connectionManager", "listView", "cardBuilder", "imageLoader", "libraryB } function getMoreItemsHref(item, type) { - return "Genre" == item.Type ? "list/list.html?type=" + type + "&genreId=" + item.Id + "&serverId=" + item.ServerId : "MusicGenre" == item.Type ? "list/list.html?type=" + type + "&musicGenreId=" + item.Id + "&serverId=" + item.ServerId : "Studio" == item.Type ? "list/list.html?type=" + type + "&studioId=" + item.Id + "&serverId=" + item.ServerId : "MusicArtist" == item.Type ? "list/list.html?type=" + type + "&artistId=" + item.Id + "&serverId=" + item.ServerId : "Person" == item.Type ? "list/list.html?type=" + type + "&personId=" + item.Id + "&serverId=" + item.ServerId : "list/list.html?type=" + type + "&parentId=" + item.Id + "&serverId=" + item.ServerId + return "Genre" == item.Type ? "list.html?type=" + type + "&genreId=" + item.Id + "&serverId=" + item.ServerId : "MusicGenre" == item.Type ? "list.html?type=" + type + "&musicGenreId=" + item.Id + "&serverId=" + item.ServerId : "Studio" == item.Type ? "list.html?type=" + type + "&studioId=" + item.Id + "&serverId=" + item.ServerId : "MusicArtist" == item.Type ? "list.html?type=" + type + "&artistId=" + item.Id + "&serverId=" + item.ServerId : "Person" == item.Type ? "list.html?type=" + type + "&personId=" + item.Id + "&serverId=" + item.ServerId : "list.html?type=" + type + "&parentId=" + item.Id + "&serverId=" + item.ServerId } function addCurrentItemToQuery(query, item) { diff --git a/src/scripts/livetvrecordings.js b/src/scripts/livetvrecordings.js index c56956314d..aac880ebda 100644 --- a/src/scripts/livetvrecordings.js +++ b/src/scripts/livetvrecordings.js @@ -45,7 +45,7 @@ define(["layoutManager", "loading", "cardBuilder", "apphost", "imageLoader", "sc serverId = ApiClient.serverId(); switch (type) { case "latest": - Dashboard.navigate("list/list.html?type=Recordings&serverId=" + serverId) + Dashboard.navigate("list.html?type=Recordings&serverId=" + serverId) } } return function(view, params, tabContent) { diff --git a/src/scripts/routes.js b/src/scripts/routes.js index f2f66ad264..9d98e8a937 100644 --- a/src/scripts/routes.js +++ b/src/scripts/routes.js @@ -119,7 +119,7 @@ define([ type: "home" }); defineRoute({ - path: "/list/list.html", + path: "/list.html", autoFocus: false, controller: "list", transition: "fade" diff --git a/src/scripts/site.js b/src/scripts/site.js index f984f20ebb..d60666b3a5 100644 --- a/src/scripts/site.js +++ b/src/scripts/site.js @@ -992,11 +992,11 @@ var AppInfo = {}; } if ("nextup" === item) { - return "list/list.html?type=nextup&serverId=" + options.serverId; + return "list.html?type=nextup&serverId=" + options.serverId; } if ("list" === item) { - var url = "list/list.html?serverId=" + options.serverId + "&type=" + options.itemTypes; + var url = "list.html?serverId=" + options.serverId + "&type=" + options.itemTypes; if (options.isFavorite) { url += "&IsFavorite=true"; @@ -1011,27 +1011,27 @@ var AppInfo = {}; } if ("movies" === options.section) { - return "list/list.html?type=Programs&IsMovie=true&serverId=" + options.serverId; + return "list.html?type=Programs&IsMovie=true&serverId=" + options.serverId; } if ("shows" === options.section) { - return "list/list.html?type=Programs&IsSeries=true&IsMovie=false&IsNews=false&serverId=" + options.serverId; + return "list.html?type=Programs&IsSeries=true&IsMovie=false&IsNews=false&serverId=" + options.serverId; } if ("sports" === options.section) { - return "list/list.html?type=Programs&IsSports=true&serverId=" + options.serverId; + return "list.html?type=Programs&IsSports=true&serverId=" + options.serverId; } if ("kids" === options.section) { - return "list/list.html?type=Programs&IsKids=true&serverId=" + options.serverId; + return "list.html?type=Programs&IsKids=true&serverId=" + options.serverId; } if ("news" === options.section) { - return "list/list.html?type=Programs&IsNews=true&serverId=" + options.serverId; + return "list.html?type=Programs&IsNews=true&serverId=" + options.serverId; } if ("onnow" === options.section) { - return "list/list.html?type=Programs&IsAiring=true&serverId=" + options.serverId; + return "list.html?type=Programs&IsAiring=true&serverId=" + options.serverId; } if ("dvrschedule" === options.section) { @@ -1050,7 +1050,7 @@ var AppInfo = {}; } if ("Genre" === item.Type) { - url = "list/list.html?genreId=" + item.Id + "&serverId=" + serverId; + url = "list.html?genreId=" + item.Id + "&serverId=" + serverId; if ("livetv" === context) { url += "&type=Programs"; @@ -1064,7 +1064,7 @@ var AppInfo = {}; } if ("MusicGenre" === item.Type) { - url = "list/list.html?musicGenreId=" + item.Id + "&serverId=" + serverId; + url = "list.html?musicGenreId=" + item.Id + "&serverId=" + serverId; if (options.parentId) { url += "&parentId=" + options.parentId; @@ -1074,7 +1074,7 @@ var AppInfo = {}; } if ("Studio" === item.Type) { - url = "list/list.html?studioId=" + item.Id + "&serverId=" + serverId; + url = "list.html?studioId=" + item.Id + "&serverId=" + serverId; if (options.parentId) { url += "&parentId=" + options.parentId; @@ -1123,7 +1123,7 @@ var AppInfo = {}; if (item.IsFolder) { if (id) { - return "list/list.html?parentId=" + id + "&serverId=" + serverId; + return "list.html?parentId=" + id + "&serverId=" + serverId; } return "#"; From 6ca5ad644103e0d825e6b1c98a32975a6e6b0d23 Mon Sep 17 00:00:00 2001 From: dkanada Date: Fri, 29 Mar 2019 15:24:06 -0700 Subject: [PATCH 10/15] add back classic themes --- src/components/skinManager.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/components/skinManager.js b/src/components/skinManager.js index d5dd0aa07a..82e3a50e56 100644 --- a/src/components/skinManager.js +++ b/src/components/skinManager.js @@ -36,6 +36,9 @@ define(['apphost', 'userSettings', 'browser', 'events', 'pluginManager', 'backdr id: "dark", isDefault: true, isDefaultServerDashboard: true + }, { + name: "Dark Classic", + id: "dark-classic", }, { name: "Dark (green accent)", id: "dark-green" @@ -45,6 +48,9 @@ define(['apphost', 'userSettings', 'browser', 'events', 'pluginManager', 'backdr }, { name: "Light", id: "light" + }, { + name: "Light Classic", + id: "light-classic" }, { name: "Light (blue accent)", id: "light-blue" From ac5b545ce4192d49c80e41218d12f3243b0a6c62 Mon Sep 17 00:00:00 2001 From: dkanada Date: Fri, 29 Mar 2019 15:50:16 -0700 Subject: [PATCH 11/15] remove useless playback settings alert dialog --- .../displaysettings/displaysettings.js | 8 +----- src/components/playback/playersettingsmenu.js | 18 ------------ src/components/skinManager.js | 28 +++++++------------ src/strings/de.json | 2 -- src/strings/el.json | 1 - src/strings/en-us.json | 2 -- src/strings/es-mx.json | 2 -- src/strings/fr.json | 2 -- src/strings/hu.json | 2 -- src/strings/kk.json | 2 -- src/strings/nl.json | 1 - src/strings/pl.json | 2 -- src/strings/ru.json | 2 -- 13 files changed, 11 insertions(+), 61 deletions(-) diff --git a/src/components/displaysettings/displaysettings.js b/src/components/displaysettings/displaysettings.js index 680c6b634b..fea7d9bd3e 100644 --- a/src/components/displaysettings/displaysettings.js +++ b/src/components/displaysettings/displaysettings.js @@ -2,25 +2,19 @@ define(['require', 'browser', 'layoutManager', 'appSettings', 'pluginManager', ' "use strict"; function fillThemes(select, isDashboard) { - select.innerHTML = skinManager.getThemes().map(function (t) { - var value = t.id; - if (t.isDefault && !isDashboard) { value = ''; - } - else if (t.isDefaultServerDashboard && isDashboard) { + } else if (t.isDefaultServerDashboard && isDashboard) { value = ''; } return ''; - }).join(''); } function loadScreensavers(context, userSettings) { - var selectScreensaver = context.querySelector('.selectScreensaver'); var options = pluginManager.ofType('screensaver').map(function (plugin) { return { diff --git a/src/components/playback/playersettingsmenu.js b/src/components/playback/playersettingsmenu.js index b51027fe0f..b0c4609217 100644 --- a/src/components/playback/playersettingsmenu.js +++ b/src/components/playback/playersettingsmenu.js @@ -196,11 +196,6 @@ define(['connectionManager', 'actionsheet', 'datetime', 'playbackManager', 'glob }); } - menuItems.push({ - name: globalize.translate('PlaybackSettings'), - id: 'playbacksettings' - }); - if (user && user.Policy.EnableVideoPlaybackTranscoding) { var secondaryQualityText = getQualitySecondaryText(player); @@ -214,7 +209,6 @@ define(['connectionManager', 'actionsheet', 'datetime', 'playbackManager', 'glob var repeatMode = playbackManager.getRepeatMode(player); if (supportedCommands.indexOf('SetRepeatMode') !== -1 && playbackManager.currentMediaSource(player).RunTimeTicks) { - menuItems.push({ name: globalize.translate('RepeatMode'), id: 'repeatmode', @@ -223,7 +217,6 @@ define(['connectionManager', 'actionsheet', 'datetime', 'playbackManager', 'glob } if (options.stats) { - menuItems.push({ name: globalize.translate('StatsForNerds'), id: 'stats', @@ -237,12 +230,9 @@ define(['connectionManager', 'actionsheet', 'datetime', 'playbackManager', 'glob }); return actionsheet.show({ - items: menuItems, positionTo: options.positionTo - }).then(function (id) { - return handleSelectedOption(id, options, player); }); } @@ -279,14 +269,8 @@ define(['connectionManager', 'actionsheet', 'datetime', 'playbackManager', 'glob return alertText(globalize.translate('SubtitleSettingsIntro')); } - function showPlaybackSettings(player, btn) { - return alertText(globalize.translate('PlaybackSettingsIntro')); - } - function handleSelectedOption(id, options, player) { - switch (id) { - case 'quality': return showQualityMenu(player, options.positionTo); case 'aspectratio': @@ -295,8 +279,6 @@ define(['connectionManager', 'actionsheet', 'datetime', 'playbackManager', 'glob return showRepeatModeMenu(player, options.positionTo); case 'subtitlesettings': return showSubtitleSettings(player, options.positionTo); - case 'playbacksettings': - return showPlaybackSettings(player, options.positionTo); case 'stats': if (options.onOption) { options.onOption('stats'); diff --git a/src/components/skinManager.js b/src/components/skinManager.js index 82e3a50e56..a9af80a878 100644 --- a/src/components/skinManager.js +++ b/src/components/skinManager.js @@ -7,7 +7,6 @@ define(['apphost', 'userSettings', 'browser', 'events', 'pluginManager', 'backdr function unloadTheme() { var elem = themeStyleElement; if (elem) { - elem.parentNode.removeChild(elem); themeStyleElement = null; currentThemeId = null; @@ -16,7 +15,6 @@ define(['apphost', 'userSettings', 'browser', 'events', 'pluginManager', 'backdr function loadUserSkin(options) { options = options || {}; - if (options.start) { Emby.Page.invokeShortcut(options.start); } else { @@ -40,10 +38,10 @@ define(['apphost', 'userSettings', 'browser', 'events', 'pluginManager', 'backdr name: "Dark Classic", id: "dark-classic", }, { - name: "Dark (green accent)", + name: "Dark (Green Accent)", id: "dark-green" }, { - name: "Dark (red accent)", + name: "Dark (Red Accent)", id: "dark-red" }, { name: "Light", @@ -52,19 +50,19 @@ define(['apphost', 'userSettings', 'browser', 'events', 'pluginManager', 'backdr name: "Light Classic", id: "light-classic" }, { - name: "Light (blue accent)", + name: "Light (Blue Accent)", id: "light-blue" }, { - name: "Light (green accent)", + name: "Light (Green Accent)", id: "light-green" }, { - name: "Light (pink accent)", + name: "Light (Pink Accent)", id: "light-pink" }, { - name: "Light (purple accent)", + name: "Light (Purple Accent)", id: "light-purple" }, { - name: "Light (red accent)", + name: "Light (Red Accent)", id: "light-red" }, { name: "Windows Media Center", @@ -77,7 +75,7 @@ define(['apphost', 'userSettings', 'browser', 'events', 'pluginManager', 'backdr loadUserSkin: loadUserSkin }; - function getThemeStylesheetInfo(id, requiresRegistration, isDefaultProperty) { + function getThemeStylesheetInfo(id, isDefaultProperty) { var themes = skinManager.getThemes(); var defaultTheme; var selectedTheme; @@ -128,14 +126,13 @@ define(['apphost', 'userSettings', 'browser', 'events', 'pluginManager', 'backdr skinManager.setTheme = function (id, context) { return new Promise(function (resolve, reject) { - var requiresRegistration = true; if (currentThemeId && currentThemeId === id) { resolve(); return; } var isDefaultProperty = context === 'serverdashboard' ? 'isDefaultServerDashboard' : 'isDefault'; - var info = getThemeStylesheetInfo(id, requiresRegistration, isDefaultProperty); + var info = getThemeStylesheetInfo(id, isDefaultProperty); if (currentThemeId && currentThemeId === info.themeId) { resolve(); return; @@ -187,21 +184,16 @@ define(['apphost', 'userSettings', 'browser', 'events', 'pluginManager', 'backdr document.addEventListener('viewshow', onViewBeforeShow); function playSound(path, volume) { - lastSound = new Date().getTime(); - require(['howler'], function (howler) { - try { var sound = new Howl({ src: [path], volume: volume || 0.1 }); - sound.play(); currentSound = sound; - } - catch (err) { + } catch (err) { console.log('Error playing sound: ' + err); } }); diff --git a/src/strings/de.json b/src/strings/de.json index 6c93871eb4..771412306e 100644 --- a/src/strings/de.json +++ b/src/strings/de.json @@ -1077,7 +1077,6 @@ "PlayFromBeginning": "Von Beginn abspielen", "PlayNext": "Spiele als Nächstes ab", "PlayNextEpisodeAutomatically": "Starte nächste Episode automatisch", - "PlaybackSettingsIntro": "Um die Wiedergabeeinstellungen zu ändern, stoppen Sie die Wiedergabe und klicken Sie auf Ihr Benutzer-Icon in der oberen rechten Ecke der App.", "Played": "Gesehen", "Playlists": "Wiedergabelisten", "PleaseAddAtLeastOneFolder": "Bitte fügen Sie mindestens ein Verzeichniss zur Bibliothek durch Klicken der \"Hinzufügen\"-Schaltfläche hinzu.", @@ -1387,7 +1386,6 @@ "OptionRegex": "Reguläre Ausdrücke", "OptionSpecialEpisode": "Extras", "OptionTrackName": "Spurname", - "PlaybackSettings": "Wiedergabeeinstellungen", "Screenshots": "Bildschirmfotos", "Studios": "Studios", "SubtitleSettings": "Untertiteleinstellungen", diff --git a/src/strings/el.json b/src/strings/el.json index 325ab2fbc7..a817591666 100644 --- a/src/strings/el.json +++ b/src/strings/el.json @@ -970,7 +970,6 @@ "PlayFromBeginning": "Αναπαραγωγή από την αρχή", "PlayNext": "Επόμενη Αναπαραγωγή", "PlayNextEpisodeAutomatically": "Αναπαραγωγή του επόμενου επεισοδίου αυτόματα", - "PlaybackSettingsIntro": "Για να ρυθμίσετε τις προεπιλεγμένες ρυθμίσεις αναπαραγωγής, σταματήστε την αναπαραγωγή βίντεο και στη συνέχεια, κάντε κλικ στο εικονίδιο χρήστη στην επάνω δεξιά ενότητα της εφαρμογής.", "Played": "Έγινε Αναπαραγωγή", "Playlists": "Λίστες αναπαραγωγής", "PleaseConfirmPluginInstallation": "Παρακαλώ κάντε κλικ στο OK για να επιβεβαιώσετε ότι έχετε διαβάσει τα ανωτέρω και επιθυμείτε να προχωρήσετε με την εγκατάσταση του πρόσθετου.", diff --git a/src/strings/en-us.json b/src/strings/en-us.json index d39c7f9eae..7f79d37ecc 100644 --- a/src/strings/en-us.json +++ b/src/strings/en-us.json @@ -1191,8 +1191,6 @@ "PlayFromBeginning": "Play from beginning", "PlayNext": "Play next", "PlayNextEpisodeAutomatically": "Play next episode automatically", - "PlaybackSettings": "Playback settings", - "PlaybackSettingsIntro": "To configure default playback settings, stop video playback, then click your user icon in the top right section of the app.", "Played": "Played", "Playlists": "Playlists", "PleaseAddAtLeastOneFolder": "Please add at least one folder to this library by clicking the Add button.", diff --git a/src/strings/es-mx.json b/src/strings/es-mx.json index 445ba02c6e..9eb68484b1 100644 --- a/src/strings/es-mx.json +++ b/src/strings/es-mx.json @@ -1141,8 +1141,6 @@ "PlayFromBeginning": "Reproducir desde el inicio", "PlayNext": "Reproducir siguiente", "PlayNextEpisodeAutomatically": "Reproducir el siguiente episodio automáticamente", - "PlaybackSettings": "Configuraciones de Reproducción", - "PlaybackSettingsIntro": "Para configurar las opciones de reproducción predeterminadas, detenga la reproducción de video. entonces de clic en su icono de usuario en la esquina superior derecha de la aplicación.", "Played": "Reproducido", "Playlists": "Listas de reproducción", "PleaseAddAtLeastOneFolder": "Por favor agregue al menos una carpeta a esta biblioteca dando clic al botón de Agregar.", diff --git a/src/strings/fr.json b/src/strings/fr.json index 171837cceb..b3b77df90b 100644 --- a/src/strings/fr.json +++ b/src/strings/fr.json @@ -1135,8 +1135,6 @@ "PlayFromBeginning": "Lire depuis le début", "PlayNext": "Lire le suivant", "PlayNextEpisodeAutomatically": "Lancer l'épisode suivant automatiquement", - "PlaybackSettings": "Paramètres de lecture", - "PlaybackSettingsIntro": "Pour configurer les réglages de lecture par défaut, arrêtez la lecture de la vidéo, puis cliquez sur votre icône utilisateur située en haut à droite dans l'application.", "Played": "Lu", "Playlists": "Listes de lecture", "PleaseAddAtLeastOneFolder": "Veuillez ajouter au moins un dossier à cette médiathèque en cliquant sur le bouton Ajouter.", diff --git a/src/strings/hu.json b/src/strings/hu.json index ac181eee61..902ae1bc03 100644 --- a/src/strings/hu.json +++ b/src/strings/hu.json @@ -1208,8 +1208,6 @@ "PlaceFavoriteChannelsAtBeginning": "Helyezd el a kedvenc csatornákat az elején", "PlayFromBeginning": "Lejátszás az elejétől", "PlayNext": "Következő lejátszása", - "PlaybackSettings": "Lejátszási beállítások", - "PlaybackSettingsIntro": "Az alapértelmezett lejátszási beállítások konfigurálásához állítsd le a videót, majd kattints a felhasználói ikonra az alkalmazás jobb felső részén.", "PleaseAddAtLeastOneFolder": "Adj hozzá legalább egy mappát ehhez a könyvtárhoz a Hozzáad gombra kattintva.", "PleaseConfirmPluginInstallation": "Kérlek kattints az OK gombra, hogy megerősítsd, hogy elolvastad a fentieket és folytatni kívánod a bővítmény telepítését.", "PleaseEnterNameOrId": "Kérlek adj meg egy nevet vagy egy külső ID-t.", diff --git a/src/strings/kk.json b/src/strings/kk.json index 6e19e43eb9..2c5361ce4c 100644 --- a/src/strings/kk.json +++ b/src/strings/kk.json @@ -1165,7 +1165,6 @@ "PlayFromBeginning": "Basynan oınatý", "PlayNext": "Kelesini oınatý", "PlayNextEpisodeAutomatically": "Kelesi bólimdi avtomatty júktep alý", - "PlaybackSettingsIntro": "Ádepki oınatý parametrlerin teńsheý úshin beıne oınatýdy toqtatyńyz, sodan keıin qoldanbanyń joǵarǵy oń jaq bóligindegi paıdalanýshy belgishesin basyńyz.", "Played": "Oınatylǵan", "Playlists": "Oınatý tizimderi", "PleaseAddAtLeastOneFolder": "Qosý túımeshigin basý arqyly, osy tasyǵyshhanaǵa kem degende bir qalta qosyńyz.", @@ -1418,6 +1417,5 @@ "MessageImageFileTypeAllowed": "Tek qana JPEG jáne PNG faıldary qoldaýda.", "MessageImageTypeNotSelected": "Sýret túrin ashylmaly mázirden tandańyz.", "OptionResElement": "res elementi", - "PlaybackSettings": "Oınatý parametrleri", "SubtitleSettings": "Sýbtıtrler parametrleri" } diff --git a/src/strings/nl.json b/src/strings/nl.json index f6b8e45970..d346531692 100644 --- a/src/strings/nl.json +++ b/src/strings/nl.json @@ -1075,7 +1075,6 @@ "PlayFromBeginning": "Afspelen vanaf begin", "PlayNext": "Volgende afspelen", "PlayNextEpisodeAutomatically": "Speel volgende aflevering automatisch", - "PlaybackSettingsIntro": "Om de standaard afspeelinstellingen te configureren, stopt u het afspelen van de video. Vervolgens klikt u op het gebruikersicoon in de rechterbovenhoek van de app.", "Played": "Afgespeeld", "Playlists": "Afspeellijsten", "PleaseAddAtLeastOneFolder": "Voeg tenminste 1 map aan deze bibliotheek toe door op de Toevoegen knop te klikken.", diff --git a/src/strings/pl.json b/src/strings/pl.json index 7e41d6ca9f..0e28cbb3a1 100644 --- a/src/strings/pl.json +++ b/src/strings/pl.json @@ -1156,8 +1156,6 @@ "PlayFromBeginning": "Odtwarzaj od początku", "PlayNext": "Odtwarzaj następne", "PlayNextEpisodeAutomatically": "Odtwarzaj następny odcinek automatycznie", - "PlaybackSettings": "Ustawienia odtwarzania", - "PlaybackSettingsIntro": "W celu skonfigurowania domyślnych ustawień odtwarzania, zatrzymaj odtwarzanie, a następnie naciśnij ikonę użytkownika w górnej prawej sekcji aplikacji.", "Played": "Odtworzone", "Playlists": "Listy", "PleaseAddAtLeastOneFolder": "Proszę dodaj przynajmniej jeden folder do tej listy poprzez kliknięcie guzika Dodaj", diff --git a/src/strings/ru.json b/src/strings/ru.json index 673942bc09..a3b7046e15 100644 --- a/src/strings/ru.json +++ b/src/strings/ru.json @@ -1165,7 +1165,6 @@ "PlayFromBeginning": "Воспр. с начала", "PlayNext": "Воспроизвести следующее", "PlayNextEpisodeAutomatically": "Воспроизводить последующий эпизод автоматически", - "PlaybackSettingsIntro": "Чтобы конфигурировать параметры воспроизведения по умолчанию, остановите воспроизведение видео, затем щелкните значок пользователя в правой верхней части приложения.", "Played": "Воспроизведено", "Playlists": "Плей-листы", "PleaseAddAtLeastOneFolder": "Добавьте, по крайней мере, одну папку к данной медиатеке, нажав кнопку Добавить.", @@ -1418,7 +1417,6 @@ "LeaveBlankToNotSetAPassword": "Необязательно - оставьте пустым, чтобы не назначать пароль", "MessageImageFileTypeAllowed": "Поддерживаются только файлы JPEG и PNG.", "MessageImageTypeNotSelected": "Выберите тип рисунка из выпадающего меню.", - "PlaybackSettings": "Параметры воспроизведения", "SubtitleSettings": "Параметры субтитров", "OptionResElement": "res-элемент" } From 28a5552d96a99081a78e926c072bd02ea4fe9120 Mon Sep 17 00:00:00 2001 From: dkanada Date: Fri, 29 Mar 2019 16:04:56 -0700 Subject: [PATCH 12/15] remove useless subtitle setting alert dialog --- src/components/playback/playersettingsmenu.js | 40 +------------------ src/strings/de.json | 2 - src/strings/el.json | 1 - src/strings/en-us.json | 2 - src/strings/es-mx.json | 2 - src/strings/fr.json | 2 - src/strings/hu.json | 2 - src/strings/kk.json | 4 +- src/strings/nl.json | 1 - src/strings/pl.json | 2 - src/strings/ru.json | 2 - 11 files changed, 3 insertions(+), 57 deletions(-) diff --git a/src/components/playback/playersettingsmenu.js b/src/components/playback/playersettingsmenu.js index b0c4609217..f7f240afac 100644 --- a/src/components/playback/playersettingsmenu.js +++ b/src/components/playback/playersettingsmenu.js @@ -16,7 +16,6 @@ define(['connectionManager', 'actionsheet', 'datetime', 'playbackManager', 'glob }); var menuItems = options.map(function (o) { - var opt = { name: o.name, id: o.bitrate, @@ -39,25 +38,19 @@ define(['connectionManager', 'actionsheet', 'datetime', 'playbackManager', 'glob return actionsheet.show({ items: menuItems, positionTo: btn - }).then(function (id) { var bitrate = parseInt(id); if (bitrate !== selectedId) { - playbackManager.setMaxStreamingBitrate({ - enableAutomaticBitrateDetection: bitrate ? false : true, maxBitrate: bitrate - }, player); } }); } function showRepeatModeMenu(player, btn) { - var menuItems = []; - var currentValue = playbackManager.getRepeatMode(player); menuItems.push({ @@ -65,6 +58,7 @@ define(['connectionManager', 'actionsheet', 'datetime', 'playbackManager', 'glob id: 'RepeatAll', selected: currentValue === 'RepeatAll' }); + menuItems.push({ name: globalize.translate('RepeatOne'), id: 'RepeatOne', @@ -80,9 +74,7 @@ define(['connectionManager', 'actionsheet', 'datetime', 'playbackManager', 'glob return actionsheet.show({ items: menuItems, positionTo: btn - }).then(function (mode) { - if (mode) { playbackManager.setRepeatMode(mode, player); } @@ -90,15 +82,14 @@ define(['connectionManager', 'actionsheet', 'datetime', 'playbackManager', 'glob } function getQualitySecondaryText(player) { - var state = playbackManager.getPlayerState(player); - var isAutoEnabled = playbackManager.enableAutomaticBitrateDetection(player); var currentMaxBitrate = playbackManager.getMaxStreamingBitrate(player); var videoStream = playbackManager.currentMediaSource(player).MediaStreams.filter(function (stream) { return stream.Type === "Video"; })[0]; + var videoWidth = videoStream ? videoStream.Width : null; var options = qualityoptions.getVideoQualityOptions({ @@ -109,7 +100,6 @@ define(['connectionManager', 'actionsheet', 'datetime', 'playbackManager', 'glob }); var menuItems = options.map(function (o) { - var opt = { name: o.name, id: o.bitrate, @@ -132,7 +122,6 @@ define(['connectionManager', 'actionsheet', 'datetime', 'playbackManager', 'glob } selectedOption = selectedOption[0]; - var text = selectedOption.name; if (selectedOption.autoText) { @@ -224,11 +213,6 @@ define(['connectionManager', 'actionsheet', 'datetime', 'playbackManager', 'glob }); } - menuItems.push({ - name: globalize.translate('SubtitleSettings'), - id: 'subtitlesettings' - }); - return actionsheet.show({ items: menuItems, positionTo: options.positionTo @@ -238,9 +222,7 @@ define(['connectionManager', 'actionsheet', 'datetime', 'playbackManager', 'glob } function show(options) { - var player = options.player; - var currentItem = playbackManager.currentItem(player); if (!currentItem || !currentItem.ServerId) { @@ -248,27 +230,11 @@ define(['connectionManager', 'actionsheet', 'datetime', 'playbackManager', 'glob } var apiClient = connectionManager.getApiClient(currentItem.ServerId); - return apiClient.getCurrentUser().then(function (user) { return showWithUser(options, player, user); }); } - function alertText(text) { - - return new Promise(function (resolve, reject) { - - require(['alert'], function (alert) { - - alert(text).then(resolve); - }); - }); - } - - function showSubtitleSettings(player, btn) { - return alertText(globalize.translate('SubtitleSettingsIntro')); - } - function handleSelectedOption(id, options, player) { switch (id) { case 'quality': @@ -277,8 +243,6 @@ define(['connectionManager', 'actionsheet', 'datetime', 'playbackManager', 'glob return showAspectRatioMenu(player, options.positionTo); case 'repeatmode': return showRepeatModeMenu(player, options.positionTo); - case 'subtitlesettings': - return showSubtitleSettings(player, options.positionTo); case 'stats': if (options.onOption) { options.onOption('stats'); diff --git a/src/strings/de.json b/src/strings/de.json index 771412306e..2e632d7630 100644 --- a/src/strings/de.json +++ b/src/strings/de.json @@ -1182,7 +1182,6 @@ "SubtitleAppearanceSettingsAlsoPassedToCastDevices": "Diese Einstellungen werden auch auf jede Chromecast-Wiedergabe angewendet, die von diesem Gerät gestartet wird.", "SubtitleAppearanceSettingsDisclaimer": "Diese Einstellungen werden nicht auf grafische Untertitel (PGS, DVD, etc.) oder Untertitel mit eingebettetem Style-Elementen (ASS/SSA) angewendet.", "SubtitleDownloadersHelp": "Aktiviere und bewerte Deine bevorzugten Untertitel Downloader in der Reihenfolge der Priorität.", - "SubtitleSettingsIntro": "Um das Aussehen der Untertitel und die Spracheinstellungen zu ändern, stoppen Sie die Wiedergabe und klicken Sie auf Ihr Benutzer-Icon in der oberen rechten Ecke der App.", "Subtitles": "Untertitel", "Suggestions": "Empfehlungen", "Sunday": "Sonntag", @@ -1388,7 +1387,6 @@ "OptionTrackName": "Spurname", "Screenshots": "Bildschirmfotos", "Studios": "Studios", - "SubtitleSettings": "Untertiteleinstellungen", "TV": "TV", "TabCodecs": "Codecs", "TabGenres": "Genres", diff --git a/src/strings/el.json b/src/strings/el.json index a817591666..8e4e399dd7 100644 --- a/src/strings/el.json +++ b/src/strings/el.json @@ -1066,7 +1066,6 @@ "Studios": "Στούντιο", "SubtitleAppearanceSettingsAlsoPassedToCastDevices": "Αυτές οι ρυθμίσεις ισχύουν επίσης για οποιαδήποτε αναπαραγωγή του Chromecast που ξεκίνησε από αυτήν τη συσκευή.", "SubtitleAppearanceSettingsDisclaimer": "Αυτές οι ρυθμίσεις δεν θα ισχύουν για γραφικούς υποτίτλους (PGS, DVD, κ.λπ.) ή για υπότιτλους που έχουν ενσωματωμένο το δικό τους στυλ (ASS / SSA).", - "SubtitleSettingsIntro": "Για να ρυθμίσετε την προεπιλεγμένη εμφάνιση υπότιτλων και τις ρυθμίσεις γλώσσας, σταματήστε την αναπαραγωγή βίντεο και, στη συνέχεια, κάντε κλικ στο εικονίδιο χρήστη στην επάνω δεξιά ενότητα της εφαρμογής.", "Subtitles": "Υπότιτλοι", "Suggestions": "Προτάσεις", "Sunday": "Κυριακή", diff --git a/src/strings/en-us.json b/src/strings/en-us.json index 7f79d37ecc..ea7b479b42 100644 --- a/src/strings/en-us.json +++ b/src/strings/en-us.json @@ -1301,8 +1301,6 @@ "SubtitleAppearanceSettingsAlsoPassedToCastDevices": "These settings also apply to any Chromecast playback started by this device.", "SubtitleAppearanceSettingsDisclaimer": "These settings will not apply to graphical subtitles (PGS, DVD, etc), or subtitles that have their own styles embedded (ASS/SSA).", "SubtitleDownloadersHelp": "Enable and rank your preferred subtitle downloaders in order of priority.", - "SubtitleSettings": "Subtitle settings", - "SubtitleSettingsIntro": "To configure default subtitle appearance and language settings, stop video playback, then click your user icon in the top right section of the app.", "Subtitles": "Subtitles", "Suggestions": "Suggestions", "Sunday": "Sunday", diff --git a/src/strings/es-mx.json b/src/strings/es-mx.json index 9eb68484b1..dd09447e7a 100644 --- a/src/strings/es-mx.json +++ b/src/strings/es-mx.json @@ -1250,8 +1250,6 @@ "SubtitleAppearanceSettingsAlsoPassedToCastDevices": "Estos ajustes también aplican a cualquier reproducción de Chromecast iniciada por este dispositivo.", "SubtitleAppearanceSettingsDisclaimer": "Estas configuraciones no se aplicaran a subtitulos gráficos (PGS, DVD, etc.) o a subtitulos que tienen sus propias fuentes embebidas (ASS/SSA).", "SubtitleDownloadersHelp": "Habilite y priorice sus recolectores de subtitulos en orden de preferencia.", - "SubtitleSettings": "Configuraciones de Subtitulos", - "SubtitleSettingsIntro": "Para configurar la apariencia predeterminada de los subtitulos e idioma, detenga la reproducción de video, entonces de clic en su icono de usuario en la parte superior derecha de la aplicación.", "Subtitles": "Subtítulos", "Suggestions": "Sugerencias", "Sunday": "Domingo", diff --git a/src/strings/fr.json b/src/strings/fr.json index b3b77df90b..b864934e00 100644 --- a/src/strings/fr.json +++ b/src/strings/fr.json @@ -1242,8 +1242,6 @@ "SubtitleAppearanceSettingsAlsoPassedToCastDevices": "Ces paramètres s'appliquent également à toute lecture Chromecast démarrée par cet appareil.", "SubtitleAppearanceSettingsDisclaimer": "Ces paramètres ne s'appliqueront pas aux sous-titres graphiques (PGS, DVD etc) ou aux sous-titres qui ont leurs propres styles incorporés (ASS/SSA).", "SubtitleDownloadersHelp": "Activer et ranger vos outils de téléchargement de sous-titres favoris par ordre de priorité.", - "SubtitleSettings": "Paramètres des sous-titres", - "SubtitleSettingsIntro": "Pour configurer l'apparence des sous-titres et la langue par défaut, arrêtez la lecture de la vidéo, puis cliquez sur votre icône utilisateur située en haut à droite dans l'application.", "Subtitles": "Sous-titres", "Sunday": "Dimanche", "Sync": "Synchroniser", diff --git a/src/strings/hu.json b/src/strings/hu.json index 902ae1bc03..bcf15036ba 100644 --- a/src/strings/hu.json +++ b/src/strings/hu.json @@ -1267,8 +1267,6 @@ "SubtitleAppearanceSettingsAlsoPassedToCastDevices": "Ezek a beállítások a készülék által elindított összes Chromecast lejátszásra is vonatkoznak.", "SubtitleAppearanceSettingsDisclaimer": "Ezek a beállítások nem vonatkoznak a grafikus feliratokra (PGS, DVD, stb.) Vagy a saját stílusokkal ellátott feliratokra (ASS / SSA).", "SubtitleDownloadersHelp": "Engedélyezd és rangsorold az előnyben részesített feliratok letöltőket sorrendben.", - "SubtitleSettings": "Felirat beállítások", - "SubtitleSettingsIntro": "Az alapértelmezett felirat megjelenésének és nyelvi beállításainak konfigurálásához állítsd le a videót, majd kattints a felhasználói ikonra az alkalmazás jobb felső részén.", "SystemDlnaProfilesHelp": "A rendszerprofilok csak olvashatóak. A rendszerprofil módosításai egy új egyéni profilba kerülnek.", "TV": "TV", "TabDirectPlay": "Közvetlen lejátszás", diff --git a/src/strings/kk.json b/src/strings/kk.json index 2c5361ce4c..817f552756 100644 --- a/src/strings/kk.json +++ b/src/strings/kk.json @@ -1275,7 +1275,6 @@ "SubtitleAppearanceSettingsAlsoPassedToCastDevices": "Bul parametrler osy qurylǵy arqyly iske qosylǵan kez-kelgen Chromecast oınatýyna qoldanylady.", "SubtitleAppearanceSettingsDisclaimer": "Bul parametrler grafıkalyq sýbtıtrlerge (PGS, DVD j.t.b.) nemese óz máneri bar endirilgen sýbtıtrlerge (ASS/SSA) qoldanylmaıdy.", "SubtitleDownloadersHelp": "Teńshelgen sýbtıtrler júkteýshilerin qosyńyz jáne basymdylyq reti boıynsha dáreje berińiz.", - "SubtitleSettingsIntro": "Ádepki sýbtıtr kórinisin jáne til parametrlerin teńsheý úshin beıne oınatýdy toqtatyńyz, sodan keıin qoldanbanyń joǵarǵy oń jaq bóligindegi paıdalanýshy belgishesin basyńyz.", "Subtitles": "Sýbtıtrler", "Suggestions": "Usynystar", "Sunday": "jeksenbi", @@ -1416,6 +1415,5 @@ "LeaveBlankToNotSetAPassword": "Mindetti emes - bos qaldyrsańyz, paról paıdalanylmaıdy", "MessageImageFileTypeAllowed": "Tek qana JPEG jáne PNG faıldary qoldaýda.", "MessageImageTypeNotSelected": "Sýret túrin ashylmaly mázirden tandańyz.", - "OptionResElement": "res elementi", - "SubtitleSettings": "Sýbtıtrler parametrleri" + "OptionResElement": "res elementi" } diff --git a/src/strings/nl.json b/src/strings/nl.json index d346531692..8f19baa490 100644 --- a/src/strings/nl.json +++ b/src/strings/nl.json @@ -1182,7 +1182,6 @@ "SubtitleAppearanceSettingsAlsoPassedToCastDevices": "Deze instellingen hebben ook effect op afspelen naar een Chromecast wanneer deze vanaf dit apparaat worden gestart.", "SubtitleAppearanceSettingsDisclaimer": "Deze instellingen hebben geen invloed op grafische ondertitels (PGS, DVD etc.) en ondertitels die hun eigen stijl ingebouwd hebben (ASS/SSA).", "SubtitleDownloadersHelp": "Schakel de gewenste ondertiteldownloaders in en rangschik ze in volgorde van prioritieit.", - "SubtitleSettingsIntro": "Om de standaard ondertiteling- en taalinstellingen te configureren, stopt u het afspelen van de video. Vervolgens klikt u op het gebruikersicoon in de rechterbovenhoek van de app.", "Subtitles": "Ondertiteling", "Suggestions": "Suggesties", "Sunday": "Zondag", diff --git a/src/strings/pl.json b/src/strings/pl.json index 0e28cbb3a1..042c9a7f21 100644 --- a/src/strings/pl.json +++ b/src/strings/pl.json @@ -1266,8 +1266,6 @@ "SubtitleAppearanceSettingsAlsoPassedToCastDevices": "Powyższe ustawienia dotyczą także odtwarzania Chromecast rozpoczętego przez to urządzenie.", "SubtitleAppearanceSettingsDisclaimer": "Te ustawienia nie mają zastosowania do napisów graficznych (PGS, DVD, etc) lub napisów, które posiadają swoje własne wbudowane style (ASS/SSA).", "SubtitleDownloadersHelp": "Umożliwia aktywowanie i używanie dostawców napisów w preferowanej kolejności.", - "SubtitleSettings": "Ustawienia napisów", - "SubtitleSettingsIntro": "W celu skonfigurowania domyślnych ustawień napisów i języka, zatrzymaj odtwarzanie, a następnie naciśnij ikonę użytkownika w górnej prawej sekcji aplikacji.", "Subtitles": "Napisy", "Suggestions": "Polecane", "Sunday": "Niedziela", diff --git a/src/strings/ru.json b/src/strings/ru.json index a3b7046e15..eb20428f15 100644 --- a/src/strings/ru.json +++ b/src/strings/ru.json @@ -1275,7 +1275,6 @@ "SubtitleAppearanceSettingsAlsoPassedToCastDevices": "Эти параметры также применимы к любому Chromecast-воспроизведению запущенному данным устройством.", "SubtitleAppearanceSettingsDisclaimer": "Данные параметры не применимы к графическим субтитрам (PGS, DVD и т.д.) или к субтитрам, которые имеют внедрённые свои собственные стили (ASS/SSA).", "SubtitleDownloadersHelp": "Включите и ранжируйте предпочитаемые загрузчики субтитров в порядке приоритета.", - "SubtitleSettingsIntro": "Чтобы конфигурировать внешний вид субтитров и языковые настройки, остановите воспроизведение видео, затем щелкните значок пользователя в правой верхней части приложения.", "Subtitles": "Субтитры", "Suggestions": "Предлагаемое", "Sunday": "воскресенье", @@ -1417,6 +1416,5 @@ "LeaveBlankToNotSetAPassword": "Необязательно - оставьте пустым, чтобы не назначать пароль", "MessageImageFileTypeAllowed": "Поддерживаются только файлы JPEG и PNG.", "MessageImageTypeNotSelected": "Выберите тип рисунка из выпадающего меню.", - "SubtitleSettings": "Параметры субтитров", "OptionResElement": "res-элемент" } From 7f4895465d139405385e1fa00d426a96acc91c6e Mon Sep 17 00:00:00 2001 From: dkanada Date: Fri, 29 Mar 2019 16:58:46 -0700 Subject: [PATCH 13/15] small changes to some strings --- .../homescreensettings/homescreensettings.template.html | 6 +----- src/components/playback/playersettingsmenu.js | 2 +- src/mypreferenceshome.html | 3 +-- src/mypreferencesmenu.html | 2 +- src/strings/ar.json | 2 -- src/strings/bg-bg.json | 3 --- src/strings/ca.json | 3 --- src/strings/cs.json | 3 --- src/strings/da.json | 2 -- src/strings/de.json | 4 ---- src/strings/el.json | 4 ---- src/strings/en-us.json | 7 +++---- src/strings/es-mx.json | 4 ---- src/strings/es.json | 4 ---- src/strings/fr.json | 4 ---- src/strings/hr.json | 2 -- src/strings/hu.json | 4 ---- src/strings/it.json | 4 ---- src/strings/kk.json | 4 ---- src/strings/ko.json | 2 -- src/strings/nb.json | 3 --- src/strings/nl.json | 4 ---- src/strings/pl.json | 4 ---- src/strings/pt-br.json | 4 ---- src/strings/pt-pt.json | 2 -- src/strings/ru.json | 4 ---- src/strings/sk.json | 3 --- src/strings/sv.json | 3 --- src/strings/zh-cn.json | 3 --- 29 files changed, 7 insertions(+), 92 deletions(-) diff --git a/src/components/homescreensettings/homescreensettings.template.html b/src/components/homescreensettings/homescreensettings.template.html index 6295af0dfa..2cb1dcbe14 100644 --- a/src/components/homescreensettings/homescreensettings.template.html +++ b/src/components/homescreensettings/homescreensettings.template.html @@ -1,10 +1,6 @@
-
- -

- ${HeaderHomeScreen} -

+

${HeaderHome}