Replace innerText method for buildOpenTabTable() function
This commit is contained in:
parent
ae69be9f39
commit
8adfaecd81
1 changed files with 29 additions and 9 deletions
|
@ -1041,17 +1041,37 @@ Logic.registerPanel(P_CONTAINER_INFO, {
|
||||||
const fragment = document.createDocumentFragment();
|
const fragment = document.createDocumentFragment();
|
||||||
for (let tab of tabs) { // eslint-disable-line prefer-const
|
for (let tab of tabs) { // eslint-disable-line prefer-const
|
||||||
const tr = document.createElement("tr");
|
const tr = document.createElement("tr");
|
||||||
fragment.appendChild(tr);
|
|
||||||
tr.classList.add("menu-item", "hover-highlight", "keyboard-nav");
|
tr.classList.add("menu-item", "hover-highlight", "keyboard-nav");
|
||||||
tr.setAttribute("tabindex", "0");
|
tr.setAttribute("tabindex", "0");
|
||||||
tr.innerHTML = Utils.escaped`
|
|
||||||
<td>
|
// Create <td>
|
||||||
<div class="favicon"></div>
|
const tdMenuItem = document.createElement("td");
|
||||||
<span title="${tab.url}" class="menu-text truncate-text">${tab.title}</span>
|
|
||||||
<img id="${tab.id}" class="trash-button" src="/img/close.svg" />
|
// Create <div class="favicon"></div> and set context via createFavIconElement()
|
||||||
</td>`;
|
const divFavIcon = document.createElement("div");
|
||||||
tr.querySelector(".favicon").appendChild(Utils.createFavIconElement(tab.favIconUrl));
|
divFavIcon.classList.add("favicon");
|
||||||
tr.setAttribute("tabindex", "0");
|
divFavIcon.appendChild(Utils.createFavIconElement(tab.favIconUrl));
|
||||||
|
|
||||||
|
// Create <span title="${tab.url}" class="menu-text truncate-text">${tab.title}</span>
|
||||||
|
const spanMenuTruncateText = document.createElement("span");
|
||||||
|
spanMenuTruncateText.classList.add("truncate-text");
|
||||||
|
spanMenuTruncateText.classList.add("menu-text");
|
||||||
|
spanMenuTruncateText.textContent = tab.title;
|
||||||
|
spanMenuTruncateText.title = tab.url;
|
||||||
|
|
||||||
|
// Create <img id="${tab.id}" class="trash-button" src="/img/close.svg" />
|
||||||
|
const imgTrashButton = document.createElement("img");
|
||||||
|
imgTrashButton.classList.add("trash-button");
|
||||||
|
imgTrashButton.src = "/img/close.svg";
|
||||||
|
imgTrashButton.id = tab.id;
|
||||||
|
|
||||||
|
// Append Children
|
||||||
|
// table > fragment > tr > td > divFavIcon | spanMenuTruncateText | imgTrashButton
|
||||||
|
tdMenuItem.appendChild(divFavIcon);
|
||||||
|
tdMenuItem.appendChild(spanMenuTruncateText);
|
||||||
|
tdMenuItem.appendChild(imgTrashButton);
|
||||||
|
tr.appendChild(tdMenuItem);
|
||||||
|
fragment.appendChild(tr);
|
||||||
table.appendChild(fragment);
|
table.appendChild(fragment);
|
||||||
|
|
||||||
// On click, we activate this tab. But only if this tab is active.
|
// On click, we activate this tab. But only if this tab is active.
|
||||||
|
|
Loading…
Add table
Reference in a new issue