diff --git a/src/content.ts b/src/content.ts index 51bd2b58..709c05a1 100644 --- a/src/content.ts +++ b/src/content.ts @@ -49,6 +49,10 @@ var channelWhitelisted = false; // create preview bar var previewBar = null; +// When not null, a sponsor is currently being previewed and auto skip should be enabled. +// This is set to a timeout function when that happens that will reset it after 3 seconds. +var previewResetter: NodeJS.Timeout = null; + //the player controls on the YouTube player var controls = null; @@ -144,6 +148,13 @@ function messageListener(request: any, sender: any, sendResponse: (response: any video.play(); } + // Start preview resetter + if (previewResetter !== null){ + clearTimeout(previewResetter); + } + + previewResetter = setTimeout(() => previewResetter = null, 4000); + return case "getCurrentTime": sendResponse({ @@ -658,7 +669,7 @@ function checkIfTimeToSkip(currentVideoTime, startTime, endTime) { //skip fromt he start time to the end time for a certain index sponsor time function skipToTime(v, index, sponsorTimes, openNotice) { - if (!Config.config.disableAutoSkip) { + if (!Config.config.disableAutoSkip || previewResetter !== null) { v.currentTime = sponsorTimes[index][1]; }