Ver Fonte

don't use call with inline functions

Gildas há 5 anos atrás
pai
commit
7c17c3c8aa

+ 1 - 1
lib/single-file/processors/frame-tree/content/content-frame-tree.js

@@ -67,7 +67,7 @@ this.singlefile.lib.processors.frameTree.content.frames = this.singlefile.lib.pr
 			});
 		}
 	}
-	addEventListener.call(window, "message", async event => {
+	addEventListener("message", async event => {
 		if (typeof event.data == "string" && event.data.startsWith(MESSAGE_PREFIX)) {
 			event.preventDefault();
 			event.stopPropagation();

+ 20 - 20
lib/single-file/processors/hooks/content/content-hooks-frames-web.js

@@ -63,8 +63,8 @@
 	const observers = new Map();
 	const observedElements = new Map();
 
-	addEventListener.call(window, LOAD_DEFERRED_IMAGES_START_EVENT, () => loadDeferredImagesStart());
-	addEventListener.call(window, LOAD_DEFERRED_IMAGES_KEEP_ZOOM_LEVEL_START_EVENT, () => loadDeferredImagesStart(true));
+	addEventListener(LOAD_DEFERRED_IMAGES_START_EVENT, () => loadDeferredImagesStart());
+	addEventListener(LOAD_DEFERRED_IMAGES_KEEP_ZOOM_LEVEL_START_EVENT, () => loadDeferredImagesStart(true));
 
 	function loadDeferredImagesStart(keepZoomLevel) {
 		const scrollingElement = document.scrollingElement || document.documentElement;
@@ -108,20 +108,20 @@
 					const result = new Image(...arguments);
 					result.__defineSetter__("src", function (value) {
 						image.src = value;
-						dispatchEvent.call(window, new CustomEvent(LOAD_IMAGE_EVENT, { detail: image.src }));
+						dispatchEvent(new CustomEvent(LOAD_IMAGE_EVENT, { detail: image.src }));
 					});
 					result.__defineGetter__("src", function () {
 						return image.src;
 					});
 					result.__defineSetter__("srcset", function (value) {
-						dispatchEvent.call(window, new CustomEvent(LOAD_IMAGE_EVENT));
+						dispatchEvent(new CustomEvent(LOAD_IMAGE_EVENT));
 						image.srcset = value;
 					});
 					result.__defineGetter__("srcset", function () {
 						return image.srcset;
 					});
 					image.onload = image.onloadend = image.onerror = event => {
-						dispatchEvent.call(window, new CustomEvent(IMAGE_LOADED_EVENT, { detail: image.src }));
+						dispatchEvent(new CustomEvent(IMAGE_LOADED_EVENT, { detail: image.src }));
 						result.dispatchEvent(new UIEvent(event.type, event));
 					};
 					if (image.decode) {
@@ -150,8 +150,8 @@
 			document.documentElement.style.setProperty("transform-origin", (zoomFactorX < 1 ? "50%" : "0") + " " + (zoomFactorY < 1 ? "50%" : "0") + " 0", "important");
 			document.documentElement.style.setProperty("transform", "scale3d(" + zoomFactor + ", " + zoomFactor + ", 1)", "important");
 			document.documentElement.style.setProperty("min-height", (100 / zoomFactor) + "vh", "important");
-			dispatchEvent.call(window, new UIEvent("resize"));
-			dispatchEvent.call(window, new Event("scroll"));
+			dispatchEvent(new UIEvent("resize"));
+			dispatchEvent(new Event("scroll"));
 			if (keepZoomLevel) {
 				document.documentElement.style.setProperty("-sf-transform", transform, transformPriority);
 				document.documentElement.style.setProperty("-sf-transform-origin", transformOrigin, transformOriginPriority);
@@ -163,8 +163,8 @@
 			}
 		}
 		if (!keepZoomLevel) {
-			dispatchEvent.call(window, new UIEvent("resize"));
-			dispatchEvent.call(window, new Event("scroll"));
+			dispatchEvent(new UIEvent("resize"));
+			dispatchEvent(new Event("scroll"));
 			const docBoundingRect = scrollingElement.getBoundingClientRect();
 			[...observers].forEach(([intersectionObserver, observer]) => {
 				const rootBoundingRect = observer.options && observer.options.root && observer.options.root.getBoundingClientRect();
@@ -183,9 +183,9 @@
 		}
 	}
 
-	addEventListener.call(window, LOAD_DEFERRED_IMAGES_END_EVENT, () => loadDeferredImagesEnd());
-	addEventListener.call(window, LOAD_DEFERRED_IMAGES_KEEP_ZOOM_LEVEL_END_EVENT, () => loadDeferredImagesEnd(true));
-	addEventListener.call(window, LOAD_DEFERRED_IMAGES_RESET_ZOOM_LEVEL_END_EVENT, () => {
+	addEventListener(LOAD_DEFERRED_IMAGES_END_EVENT, () => loadDeferredImagesEnd());
+	addEventListener(LOAD_DEFERRED_IMAGES_KEEP_ZOOM_LEVEL_END_EVENT, () => loadDeferredImagesEnd(true));
+	addEventListener(LOAD_DEFERRED_IMAGES_RESET_ZOOM_LEVEL_END_EVENT, () => {
 		const transform = document.documentElement.style.getPropertyValue("-sf-transform");
 		const transformPriority = document.documentElement.style.getPropertyPriority("-sf-transform");
 		const transformOrigin = document.documentElement.style.getPropertyValue("-sf-transform-origin");
@@ -226,12 +226,12 @@
 			delete window._singleFileImage;
 		}
 		if (!keepZoomLevel) {
-			dispatchEvent.call(window, new UIEvent("resize"));
-			dispatchEvent.call(window, new Event("scroll"));
+			dispatchEvent(new UIEvent("resize"));
+			dispatchEvent(new Event("scroll"));
 		}
 	}
 
-	addEventListener.call(window, BLOCK_COOKIES_START_EVENT, () => {
+	addEventListener(BLOCK_COOKIES_START_EVENT, () => {
 		try {
 			document.__defineGetter__("cookie", () => { throw new Error("document.cookie temporary blocked by SingleFile"); });
 		} catch (error) {
@@ -239,11 +239,11 @@
 		}
 	});
 
-	addEventListener.call(window, BLOCK_COOKIES_END_EVENT, () => {
+	addEventListener(BLOCK_COOKIES_END_EVENT, () => {
 		delete document.cookie;
 	});
 
-	addEventListener.call(window, BLOCK_STORAGE_START_EVENT, () => {
+	addEventListener(BLOCK_STORAGE_START_EVENT, () => {
 		if (!window._singleFile_localStorage) {
 			window._singleFile_localStorage = window.localStorage;
 			window.__defineGetter__("localStorage", () => { throw new Error("localStorage temporary blocked by SingleFile"); });
@@ -254,7 +254,7 @@
 		}
 	});
 
-	addEventListener.call(window, BLOCK_STORAGE_END_EVENT, () => {
+	addEventListener(BLOCK_STORAGE_END_EVENT, () => {
 		if (window._singleFile_localStorage) {
 			delete window.localStorage;
 			window.localStorage = window._singleFile_localStorage;
@@ -291,10 +291,10 @@
 				reader.readAsDataURL(new Blob([detail.src]));
 				reader.addEventListener("load", () => {
 					detail.src = "url(" + reader.result + ")";
-					dispatchEvent.call(window, new CustomEvent(NEW_FONT_FACE_EVENT, { detail }));
+					dispatchEvent(new CustomEvent(NEW_FONT_FACE_EVENT, { detail }));
 				});
 			} else {
-				dispatchEvent.call(window, new CustomEvent(NEW_FONT_FACE_EVENT, { detail }));
+				dispatchEvent(new CustomEvent(NEW_FONT_FACE_EVENT, { detail }));
 			}
 			return new FontFace(...arguments);
 		};

+ 12 - 12
lib/single-file/processors/hooks/content/content-hooks-frames.js

@@ -51,7 +51,7 @@ this.singlefile.lib.processors.hooks.content.frames = this.singlefile.lib.proces
 
 	if (document instanceof HTMLDocument) {
 		if (browser && browser.runtime && browser.runtime.getURL) {
-			addEventListener.call(window, NEW_FONT_FACE_EVENT, event => {
+			addEventListener(NEW_FONT_FACE_EVENT, event => {
 				const detail = event.detail;
 				if (!fontFaces.find(fontFace => JSON.stringify(fontFace) == JSON.stringify(detail))) {
 					fontFaces.push(event.detail);
@@ -73,32 +73,32 @@ this.singlefile.lib.processors.hooks.content.frames = this.singlefile.lib.proces
 		getFontsData: () => fontFaces,
 		loadDeferredImagesStart: options => {
 			if (options.loadDeferredImagesBlockCookies) {
-				dispatchEvent.call(window, new CustomEvent(BLOCK_COOKIES_START_EVENT));
+				dispatchEvent(new CustomEvent(BLOCK_COOKIES_START_EVENT));
 			}
 			if (options.loadDeferredImagesBlockStorage) {
-				dispatchEvent.call(window, new CustomEvent(BLOCK_STORAGE_START_EVENT));
+				dispatchEvent(new CustomEvent(BLOCK_STORAGE_START_EVENT));
 			}
 			if (options.loadDeferredImagesKeepZoomLevel) {
-				dispatchEvent.call(window, new CustomEvent(LOAD_DEFERRED_IMAGES_KEEP_ZOOM_LEVEL_START_EVENT));
+				dispatchEvent(new CustomEvent(LOAD_DEFERRED_IMAGES_KEEP_ZOOM_LEVEL_START_EVENT));
 			} else {
-				dispatchEvent.call(window, new CustomEvent(LOAD_DEFERRED_IMAGES_START_EVENT));
+				dispatchEvent(new CustomEvent(LOAD_DEFERRED_IMAGES_START_EVENT));
 			}
 		},
 		loadDeferredImagesEnd: options => {
 			if (options.loadDeferredImagesBlockCookies) {
-				dispatchEvent.call(window, new CustomEvent(BLOCK_COOKIES_END_EVENT));
+				dispatchEvent(new CustomEvent(BLOCK_COOKIES_END_EVENT));
 			}
 			if (options.loadDeferredImagesBlockStorage) {
-				dispatchEvent.call(window, new CustomEvent(BLOCK_STORAGE_END_EVENT));
+				dispatchEvent(new CustomEvent(BLOCK_STORAGE_END_EVENT));
 			}
 			if (options.loadDeferredImagesKeepZoomLevel) {
-				dispatchEvent.call(window, new CustomEvent(LOAD_DEFERRED_IMAGES_KEEP_ZOOM_LEVEL_END_EVENT));
+				dispatchEvent(new CustomEvent(LOAD_DEFERRED_IMAGES_KEEP_ZOOM_LEVEL_END_EVENT));
 			} else {
-				dispatchEvent.call(window, new CustomEvent(LOAD_DEFERRED_IMAGES_END_EVENT));
+				dispatchEvent(new CustomEvent(LOAD_DEFERRED_IMAGES_END_EVENT));
 			}
 		},
 		loadDeferredImagesResetZoomLevel: () => {
-			dispatchEvent.call(window, new CustomEvent(LOAD_DEFERRED_IMAGES_RESET_ZOOM_LEVEL_END_EVENT));
+			dispatchEvent(new CustomEvent(LOAD_DEFERRED_IMAGES_RESET_ZOOM_LEVEL_END_EVENT));
 		},
 		LOAD_IMAGE_EVENT,
 		IMAGE_LOADED_EVENT
@@ -142,10 +142,10 @@ this.singlefile.lib.processors.hooks.content.frames = this.singlefile.lib.proces
 					reader.readAsDataURL(new Blob([detail.src]));
 					reader.addEventListener("load", () => {
 						detail.src = "url(" + reader.result + ")";
-						dispatchEvent.call(window, new CustomEvent(NEW_FONT_FACE_EVENT, { detail }));
+						dispatchEvent(new CustomEvent(NEW_FONT_FACE_EVENT, { detail }));
 					});
 				} else {
-					dispatchEvent.call(window, new CustomEvent(NEW_FONT_FACE_EVENT, { detail }));
+					dispatchEvent(new CustomEvent(NEW_FONT_FACE_EVENT, { detail }));
 				}
 				return new FontFace(...arguments);
 			};

+ 2 - 2
lib/single-file/processors/hooks/content/content-hooks-web.js

@@ -33,7 +33,7 @@
 	const addEventListener = (type, listener, options) => window.addEventListener(type, listener, options);
 	const dispatchEvent = event => window.dispatchEvent(event);	
 
-	addEventListener.call(window, FETCH_REQUEST_EVENT, async event => {
+	addEventListener(FETCH_REQUEST_EVENT, async event => {
 		const url = event.detail;
 		let detail;
 		try {
@@ -42,7 +42,7 @@
 		} catch (error) {
 			detail = { url, error: error.toString() };
 		}
-		dispatchEvent.call(window, new CustomEvent(FETCH_RESPONSE_EVENT, { detail }));
+		dispatchEvent(new CustomEvent(FETCH_RESPONSE_EVENT, { detail }));
 	});
 
 })();

+ 4 - 4
lib/single-file/processors/lazy/content/content-lazy-loader.js

@@ -90,8 +90,8 @@ this.singlefile.lib.processors.lazy.content.loader = this.singlefile.lib.process
 			maxTimeoutId = await deferForceLazyLoadEnd(timeoutId, idleTimeoutId, maxTimeoutId, observer, options, cleanupAndResolve);
 			observer.observe(document, { subtree: true, childList: true, attributes: true });
 			if (frames) {
-				addEventListener.call(window, frames.LOAD_IMAGE_EVENT, onImageLoadEvent);
-				addEventListener.call(window, frames.IMAGE_LOADED_EVENT, onImageLoadedEvent);
+				addEventListener(frames.LOAD_IMAGE_EVENT, onImageLoadEvent);
+				addEventListener(frames.IMAGE_LOADED_EVENT, onImageLoadedEvent);
 				frames.loadDeferredImagesStart(options);
 			}
 
@@ -120,8 +120,8 @@ this.singlefile.lib.processors.lazy.content.loader = this.singlefile.lib.process
 			function cleanupAndResolve(value) {
 				observer.disconnect();
 				if (frames) {
-					removeEventListener.call(window, frames.LOAD_IMAGE_EVENT, onImageLoadEvent);
-					removeEventListener.call(window, frames.IMAGE_LOADED_EVENT, onImageLoadedEvent);
+					removeEventListener(frames.LOAD_IMAGE_EVENT, onImageLoadEvent);
+					removeEventListener(frames.IMAGE_LOADED_EVENT, onImageLoadedEvent);
 				}
 				resolve(value);
 			}