Skip to content

Commit 51759f5

Browse files
committed
Fix Firefox validation errors: add extension ID and data_collection_permissions, sanitize innerHTML
1 parent a7d8ce0 commit 51759f5

2 files changed

Lines changed: 35 additions & 8 deletions

File tree

manifest.json

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,5 +25,13 @@
2525
"32": "icons/icon32.png",
2626
"48": "icons/icon48.png",
2727
"128": "icons/icon128.png"
28+
},
29+
"browser_specific_settings": {
30+
"gecko": {
31+
"id": "slactac@dotmavriq.com",
32+
"data_collection_permissions": [
33+
"improvement_program"
34+
]
35+
}
2836
}
2937
}

popup.js

Lines changed: 27 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -153,20 +153,39 @@ function loadStoredTacks() {
153153
storage.get().then((overrides) => {
154154
const keys = Object.keys(overrides);
155155
if (keys.length === 0) {
156-
tacksTable.innerHTML = '<div class="tack-row">No tacks stored yet.</div>';
156+
const emptyRow = document.createElement("div");
157+
emptyRow.className = "tack-row";
158+
emptyRow.textContent = "No tacks stored yet.";
159+
tacksTable.innerHTML = "";
160+
tacksTable.appendChild(emptyRow);
157161
return;
158162
}
159163
keys.forEach((originalName) => {
160164
const customName = overrides[originalName];
161165
const row = document.createElement("div");
162166
row.className = "tack-row";
163-
row.innerHTML = `
164-
<div class="tack-names">
165-
<div class="tack-custom">${customName}</div>
166-
<div class="tack-original">${originalName}</div>
167-
</div>
168-
<div class="tack-delete" data-original="${originalName}">✕</div>
169-
`;
167+
168+
const namesDiv = document.createElement("div");
169+
namesDiv.className = "tack-names";
170+
171+
const customDiv = document.createElement("div");
172+
customDiv.className = "tack-custom";
173+
customDiv.textContent = customName;
174+
175+
const originalDiv = document.createElement("div");
176+
originalDiv.className = "tack-original";
177+
originalDiv.textContent = originalName;
178+
179+
namesDiv.appendChild(customDiv);
180+
namesDiv.appendChild(originalDiv);
181+
182+
const deleteDiv = document.createElement("div");
183+
deleteDiv.className = "tack-delete";
184+
deleteDiv.setAttribute("data-original", originalName);
185+
deleteDiv.textContent = "✕";
186+
187+
row.appendChild(namesDiv);
188+
row.appendChild(deleteDiv);
170189
tacksTable.appendChild(row);
171190
});
172191
document.querySelectorAll(".tack-delete").forEach((button) => {

0 commit comments

Comments
 (0)