Sfoglia il codice sorgente

fix: disable siteevents on regular YT

Sv443 1 anno fa
parent
commit
d0118e8246
3 ha cambiato i file con 9 aggiunte e 7 eliminazioni
  1. 2 2
      src/BetterYTM.user.ts
  2. 0 2
      src/features/layout.ts
  3. 7 3
      src/utils.ts

+ 2 - 2
src/BetterYTM.user.ts

@@ -43,10 +43,10 @@ async function onDomLoad() {
 
 
   dbg && console.log(`BetterYTM: Initializing features for domain '${domain}'`);
   dbg && console.log(`BetterYTM: Initializing features for domain '${domain}'`);
 
 
-  initSiteEvents();
-
   try {
   try {
     if(domain === "ytm") {
     if(domain === "ytm") {
+      initSiteEvents();
+
       if(features.arrowKeySupport)
       if(features.arrowKeySupport)
         initArrowKeySkip();
         initArrowKeySkip();
 
 

+ 0 - 2
src/features/layout.ts

@@ -133,8 +133,6 @@ export function initQueueButtons() {
 }
 }
 
 
 function addQueueButtons(queueItem: HTMLElement) {
 function addQueueButtons(queueItem: HTMLElement) {
-  console.log("Add queue btns:", queueItem);
-
   const queueBtnsCont = document.createElement("div");
   const queueBtnsCont = document.createElement("div");
   queueBtnsCont.className = "bytm-queue-btn-container";
   queueBtnsCont.className = "bytm-queue-btn-container";
   queueBtnsCont.innerText = "ayo";
   queueBtnsCont.innerText = "ayo";

+ 7 - 3
src/utils.ts

@@ -139,15 +139,19 @@ export const siteEvents = new EventEmitter() as SiteEvents;
 let observers: MutationObserver[] = [];
 let observers: MutationObserver[] = [];
 
 
 export function initSiteEvents() {
 export function initSiteEvents() {
-  const queueObserver = new MutationObserver(([ record ]) => {
-    if(record.addedNodes.length > 0 || record.removedNodes.length > 0)
-      siteEvents.fire("queueChanged", record.target);
+  const queueObserver = new MutationObserver(([ { addedNodes, removedNodes, target } ]) => {
+    if(addedNodes.length > 0 || removedNodes.length > 0) {
+      dbg && console.info("BetterYTM: Detected queue change - added nodes:", addedNodes.length, "- removed nodes:", removedNodes.length);
+      siteEvents.fire("queueChanged", target);
+    }
   });
   });
   // only observe added or removed elements
   // only observe added or removed elements
   queueObserver.observe(document.querySelector(".side-panel.modular #contents.ytmusic-player-queue")!, {
   queueObserver.observe(document.querySelector(".side-panel.modular #contents.ytmusic-player-queue")!, {
     childList: true,
     childList: true,
   });
   });
 
 
+  dbg && console.info("BetterYTM: Successfully initialized SiteEvents observers");
+
   observers = [
   observers = [
     queueObserver,
     queueObserver,
   ];
   ];