Преглед изворни кода

allowed removal of iframes

Gildas пре 5 година
родитељ
комит
e65fa7ce79
1 измењених фајлова са 10 додато и 0 уклоњено
  1. 10 0
      extension/ui/content/content-ui-editor-web.js

+ 10 - 0
extension/ui/content/content-ui-editor-web.js

@@ -898,6 +898,11 @@ table {
 			element.setAttribute(DISABLED_NOSCRIPT_ATTRIBUTE_NAME, element.innerHTML);
 			element.textContent = "";
 		});
+		contentDocument.querySelectorAll("iframe").forEach(element => {
+			const pointerEvents = "pointer-events";
+			element.style.setProperty("-sf-" + pointerEvents, element.style.getPropertyValue(pointerEvents), element.style.getPropertyPriority(pointerEvents));
+			element.style.setProperty(pointerEvents, "none", "important");
+		});
 		document.replaceChild(contentDocument.documentElement, document.documentElement);
 		deserializeShadowRoots(document);
 		const iconElement = document.querySelector("link[rel*=icon]");
@@ -1386,6 +1391,11 @@ table {
 				mainElement.textContent = mainElement.value;
 			}
 		});
+		doc.querySelectorAll("iframe").forEach(element => {
+			const pointerEvents = "pointer-events";
+			element.style.setProperty(pointerEvents, element.style.getPropertyValue("-sf-" + pointerEvents), element.style.getPropertyPriority("-sf-" + pointerEvents));
+			element.style.removeProperty("-sf-" + pointerEvents);
+		});
 		delete doc.body.contentEditable;
 		const scriptElement = doc.createElement("script");
 		scriptElement.setAttribute(SCRIPT_TEMPLATE_SHADOW_ROOT, "");