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

Fix icons on WebOS

WebOS 4 apparently has a ligature bug that prevents icons with an underscore from working as intended.
This replaces them with either the corresponding CSS class or unicode escape code, depending on context.
Refactoring is needed in order to be able to use CSS classes everywhere, so in the interest of time, this does the best available currently.

Fixes #678
This commit is contained in:
MrTimscampi 2020-02-16 01:31:14 +01:00
parent 23b4dfc8fa
commit a98b961b94
82 changed files with 201 additions and 201 deletions

View file

@ -571,7 +571,7 @@ define(["datetime", "events", "itemHelper", "serverNotifications", "dom", "globa
}
if (session.PlayState && session.PlayState.IsPaused) {
btnSessionPlayPause.querySelector("i").innerHTML = "play_arrow";
btnSessionPlayPause.querySelector("i").innerHTML = "";
} else {
btnSessionPlayPause.querySelector("i").innerHTML = "pause";
}

View file

@ -54,7 +54,7 @@ define(["loading", "libraryMenu", "dom", "globalize", "cardStyle", "emby-button"
html += "</div>";
html += '<div class="cardFooter">';
html += '<div style="text-align:right; float:right;padding-top:5px;">';
html += '<button type="button" is="paper-icon-button-light" class="btnCardMenu autoSize"><i class="material-icons">more_horiz</i></button>';
html += '<button type="button" is="paper-icon-button-light" class="btnCardMenu autoSize"><i class="material-icons more_horiz"></i></button>';
html += "</div>";
html += "<div class='cardText'>";
html += configPage ? configPage.DisplayName || plugin.Name : plugin.Name;

View file

@ -51,7 +51,7 @@ define(["jQuery", "loading", "events", "globalize", "serverNotifications", "huma
if (task.State === "Running") {
html += '<button type="button" is="paper-icon-button-light" id="btnTask' + task.Id + '" class="btnStopTask" data-taskid="' + task.Id + '" title="' + globalize.translate("ButtonStop") + '"><i class="material-icons">stop</i></button>';
} else if (task.State === "Idle") {
html += '<button type="button" is="paper-icon-button-light" id="btnTask' + task.Id + '" class="btnStartTask" data-taskid="' + task.Id + '" title="' + globalize.translate("ButtonStart") + '"><i class="material-icons">play_arrow</i></button>';
html += '<button type="button" is="paper-icon-button-light" id="btnTask' + task.Id + '" class="btnStartTask" data-taskid="' + task.Id + '" title="' + globalize.translate("ButtonStart") + '"><i class="material-icons play_arrow"></i></button>';
}
html += "</div>";
}
@ -99,7 +99,7 @@ define(["jQuery", "loading", "events", "globalize", "serverNotifications", "huma
} else if (state === "Idle") {
elem.classList.add("btnStartTask");
elem.classList.remove("btnStopTask");
elem.querySelector("i").innerHTML = "play_arrow";
elem.querySelector("i").innerHTML = "&#xE037;";
elem.title = globalize.translate("ButtonStart");
}
$(elem).parents(".listItem")[0].setAttribute("data-status", state);

View file

@ -89,7 +89,7 @@ define(["loading", "dom", "libraryMenu", "globalize", "scripts/imagehelper", "hu
if (canEdit || canDelete(device.Id)) {
deviceHtml += '<div style="text-align:right; float:right;padding-top:5px;">';
deviceHtml += '<button type="button" is="paper-icon-button-light" data-id="' + device.Id + '" title="' + globalize.translate("Menu") + '" class="btnDeviceMenu"><i class="material-icons">more_horiz</i></button>';
deviceHtml += '<button type="button" is="paper-icon-button-light" data-id="' + device.Id + '" title="' + globalize.translate("Menu") + '" class="btnDeviceMenu"><i class="material-icons more_horiz"></i></button>';
deviceHtml += "</div>";
}

View file

@ -248,7 +248,7 @@ define(["appRouter", "cardBuilder", "dom", "globalize", "connectionManager", "ap
html += '<h2 class="sectionTitle sectionTitle-cards">';
html += globalize.translate(section.name);
html += "</h2>";
html += '<i class="material-icons">chevron_right</i>';
html += '<i class="material-icons chevron_right"></i>';
html += "</a>";
}

View file

@ -2070,7 +2070,7 @@ define(["loading", "appRouter", "layoutManager", "connectionManager", "cardBuild
bindAll(view, ".btnCancelTimer", "click", onCancelTimerClick);
bindAll(view, ".btnDeleteItem", "click", onDeleteClick);
bindAll(view, ".btnDownload", "click", onDownloadClick);
view.querySelector(".btnMoreCommands i").innerHTML = "more_horiz";
view.querySelector(".btnMoreCommands i").innerHTML = "&#xE5D3;";
view.querySelector(".trackSelections").addEventListener("submit", onTrackSelectionsSubmit);
view.querySelector(".btnSplitVersions").addEventListener("click", function () {
splitVersions(self, view, apiClient, params);

View file

@ -175,7 +175,7 @@ define(["globalize", "listView", "layoutManager", "userSettings", "focusManager"
var btnSortIcon = instance.btnSortIcon;
if (btnSortIcon) {
btnSortIcon.innerHTML = "Descending" === values.sortOrder ? "arrow_downward" : "arrow_upward";
btnSortIcon.innerHTML = "Descending" === values.sortOrder ? "&#xE5DB;" : "&#xE5D8;";
}
}
}

View file

@ -30,7 +30,7 @@ define(["jQuery", "globalize", "scripts/taskbutton", "dom", "libraryMenu", "layo
html += "</div>";
html += "</div>";
html += '<div class="cardFooter visualCardBox-cardFooter">';
html += '<button is="paper-icon-button-light" class="itemAction btnCardOptions autoSize" data-action="menu"><i class="material-icons">more_horiz</i></button>';
html += '<button is="paper-icon-button-light" class="itemAction btnCardOptions autoSize" data-action="menu"><i class="material-icons more_horiz"></i></button>';
html += '<div class="cardText">' + (device.FriendlyName || getTunerName(device.Type)) + "</div>";
html += '<div class="cardText cardText-secondary">';
html += device.Url || "&nbsp;";
@ -112,7 +112,7 @@ define(["jQuery", "globalize", "scripts/taskbutton", "dom", "libraryMenu", "layo
html += "</div>";
html += "</a>";
html += "</div>";
html += '<button type="button" is="paper-icon-button-light" class="btnOptions" data-id="' + provider.Id + '"><i class="material-icons listItemAside">more_horiz</i></button>';
html += '<button type="button" is="paper-icon-button-light" class="btnOptions" data-id="' + provider.Id + '"><i class="material-icons listItemAside more_horiz"></i></button>';
html += "</div>";
}

View file

@ -297,7 +297,7 @@ define(["jQuery", "apphost", "scripts/taskbutton", "loading", "libraryMenu", "gl
if (virtualFolder.showMenu !== false) {
html += '<div style="text-align:right; float:right;padding-top:5px;">';
html += '<button type="button" is="paper-icon-button-light" class="btnCardMenu autoSize"><i class="material-icons">more_horiz</i></button>';
html += '<button type="button" is="paper-icon-button-light" class="btnCardMenu autoSize"><i class="material-icons more_horiz"></i></button>';
html += "</div>";
}

View file

@ -145,7 +145,7 @@ define(["layoutManager", "loading", "libraryBrowser", "cardBuilder", "lazyLoader
html += '<h2 class="sectionTitle sectionTitle-cards">';
html += item.Name;
html += "</h2>";
html += '<i class="material-icons hide">chevron_right</i>';
html += '<i class="material-icons hide chevron_right"></i>';
html += "</a>";
html += "</div>";
if (enableScrollX()) {

View file

@ -539,7 +539,7 @@ define(["playbackManager", "dom", "inputManager", "datetime", "itemHelper", "med
function updateFullscreenIcon() {
if (playbackManager.isFullscreen(currentPlayer)) {
view.querySelector(".btnFullscreen").setAttribute("title", globalize.translate("ExitFullscreen"));
view.querySelector(".btnFullscreen i").innerHTML = "fullscreen_exit";
view.querySelector(".btnFullscreen i").innerHTML = "&#xE5D1;";
} else {
view.querySelector(".btnFullscreen").setAttribute("title", globalize.translate("Fullscreen") + " (f)");
view.querySelector(".btnFullscreen i").innerHTML = "fullscreen";
@ -741,7 +741,7 @@ define(["playbackManager", "dom", "inputManager", "datetime", "itemHelper", "med
function updatePlayPauseState(isPaused) {
var button = view.querySelector(".btnPause i");
if (isPaused) {
button.innerHTML = "play_arrow";
button.innerHTML = "&#xE037;";
button.setAttribute("title", globalize.translate("ButtonPlay") + " (k)");
} else {
button.innerHTML = "pause";
@ -880,10 +880,10 @@ define(["playbackManager", "dom", "inputManager", "datetime", "itemHelper", "med
if (isMuted) {
view.querySelector(".buttonMute").setAttribute("title", globalize.translate("Unmute") + " (m)");
view.querySelector(".buttonMute i").innerHTML = "volume_off";
view.querySelector(".buttonMute i").innerHTML = "&#xE04F;";
} else {
view.querySelector(".buttonMute").setAttribute("title", globalize.translate("Mute") + " (m)");
view.querySelector(".buttonMute i").innerHTML = "volume_up";
view.querySelector(".buttonMute i").innerHTML = "&#xE050;";
}
if (progressElement) {

View file

@ -141,7 +141,7 @@ define(["layoutManager", "loading", "libraryBrowser", "cardBuilder", "lazyLoader
html += '<h2 class="sectionTitle sectionTitle-cards">';
html += item.Name;
html += "</h2>";
html += '<i class="material-icons hide">chevron_right</i>';
html += '<i class="material-icons hide chevron_right"></i>';
html += "</a>";
html += "</div>";
if (enableScrollX()) {

View file

@ -115,7 +115,7 @@ define(["loading", "dom", "globalize", "humanedate", "paper-icon-button-light",
html += '<div class="flex-grow" style="overflow:hidden;text-overflow:ellipsis;">';
html += user.Name;
html += "</div>";
html += '<button type="button" is="paper-icon-button-light" class="btnUserMenu flex-shrink-zero"><i class="material-icons">more_horiz</i></button>';
html += '<button type="button" is="paper-icon-button-light" class="btnUserMenu flex-shrink-zero"><i class="material-icons more_horiz"></i></button>';
html += "</div>";
html += '<div class="cardText cardText-secondary">';
var lastSeen = getLastSeenText(user.LastActivityDate);
@ -188,7 +188,7 @@ define(["loading", "dom", "globalize", "humanedate", "paper-icon-button-light",
html += "</div>";
html += '<div class="cardFooter visualCardBox-cardFooter">';
html += '<div class="cardText" style="text-align:right; float:right;padding:0;">';
html += '<button type="button" is="paper-icon-button-light" class="btnUserMenu"><i class="material-icons">more_horiz</i></button>';
html += '<button type="button" is="paper-icon-button-light" class="btnUserMenu"><i class="material-icons more_horiz"></i></button>';
html += "</div>";
html += '<div class="cardText" style="padding-top:10px;padding-bottom:10px;">';
html += user.UserName;