about summary refs log tree commit diff stats
path: root/src/pages/options
diff options
context:
space:
mode:
authorSimonBrazell <simon@brazell.com.au>2021-01-11 12:39:26 +1100
committerSimonBrazell <simon@brazell.com.au>2021-01-11 12:39:26 +1100
commitf56fc681886450e68fe3597fbcba870436c05ba4 (patch)
treed253aa87ab30e8f1d02e4f71d273a2d0d418cad9 /src/pages/options
parentFixed README & build config (diff)
downloadlibredirect-f56fc681886450e68fe3597fbcba870436c05ba4.zip
Fix for https://github.com/mozilla/addons-linter/issues/3541#issue-782801439
Diffstat (limited to 'src/pages/options')
-rw-r--r--src/pages/options/options.js12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/pages/options/options.js b/src/pages/options/options.js
index e6bd224a..a6980734 100644
--- a/src/pages/options/options.js
+++ b/src/pages/options/options.js
@@ -25,6 +25,7 @@ const autocompletes = [
     instances: searchEngineInstances.map((instance) => instance.link),
   },
 ];
+const domparser = new DOMParser();
 
 let nitterInstance = document.getElementById("nitter-instance");
 let invidiousInstance = document.getElementById("invidious-instance");
@@ -69,7 +70,9 @@ function prependExceptionsItem(item, index) {
       <line x1='368' y1='144' x2='144' y2='368'
         style='fill:none;stroke:#FFF;stroke-linecap:round;stroke-linejoin:round;stroke-width:32px' />
     </svg>`;
-  button.innerHTML = svg;
+  button.appendChild(
+    domparser.parseFromString(svg, "image/svg+xml").documentElement
+  );
   button.addEventListener("click", () => {
     exceptions.splice(index, 1);
     browser.storage.sync.set({
@@ -465,9 +468,10 @@ function autocomplete(input, list) {
   }
   function getItem(item, val) {
     let div = document.createElement("div");
-    div.innerHTML = "<strong>" + item.substr(0, val.length) + "</strong>";
-    div.innerHTML += item.substr(val.length);
-    div.innerHTML += "<input type='hidden' value='" + item + "'>";
+    let html = `<strong>${item.substr(0, val.length)}</strong>${item.substr(
+      val.length
+    )}<input type='hidden' value='${item}'>`;
+    div.appendChild(parser.parseFromString(html, "text/html").documentElement);
     div.addEventListener("click", function (e) {
       input.value = e.target.getElementsByTagName("input")[0].value;
       input.dispatchEvent(new Event("input"));