Fixed double sponsor skip for zero second sponsors

This commit is contained in:
Ajay Ramachandran
2020-03-08 23:16:09 -04:00
parent 0241e15691
commit a484f2f2cc

View File

@@ -44,8 +44,8 @@ var lastPreviewBarUpdate;
//whether the duration listener listening for the duration changes of the video has been setup yet //whether the duration listener listening for the duration changes of the video has been setup yet
var durationListenerSetUp = false; var durationListenerSetUp = false;
// Has a zero second sponsor been skipped yet // Is the video currently being switched
var skippedZeroSecond = false; var switchingVideos = false;
//the channel this video is about //the channel this video is about
var channelURL; var channelURL;
@@ -250,8 +250,6 @@ function resetValues() {
//reset sponsor data found check //reset sponsor data found check
sponsorDataFound = false; sponsorDataFound = false;
skippedZeroSecond = false;
} }
async function videoIDChange(id) { async function videoIDChange(id) {
@@ -266,6 +264,8 @@ async function videoIDChange(id) {
//id is not valid //id is not valid
if (!id) return; if (!id) return;
switchingVideos = true;
// Wait for options to be ready // Wait for options to be ready
await utils.wait(() => Config.config !== null, 5000, 1); await utils.wait(() => Config.config !== null, 5000, 1);
@@ -460,8 +460,6 @@ function startSponsorSchedule(currentTime?: number): void {
let skippingFunction = () => { let skippingFunction = () => {
if (video.currentTime >= skipTime[0] && video.currentTime < skipTime[1]) { if (video.currentTime >= skipTime[0] && video.currentTime < skipTime[1]) {
if (currentTime == 0) skippedZeroSecond = true;
skipToTime(video, skipInfo.index, skipInfo.array, skipInfo.openNotice); skipToTime(video, skipInfo.index, skipInfo.array, skipInfo.openNotice);
} }
@@ -493,9 +491,12 @@ function sponsorsLookup(id: string, channelIDPromise?) {
if (!seekListenerSetUp && !Config.config.disableSkipping) { if (!seekListenerSetUp && !Config.config.disableSkipping) {
seekListenerSetUp = true; seekListenerSetUp = true;
video.addEventListener('play', () => startSponsorSchedule()); video.addEventListener('play', () => {
switchingVideos = false;
startSponsorSchedule();
});
video.addEventListener('seeked', () => { video.addEventListener('seeked', () => {
if (!video.paused) startSponsorSchedule() if (!video.paused) startSponsorSchedule();
}); });
video.addEventListener('ratechange', () => startSponsorSchedule()); video.addEventListener('ratechange', () => startSponsorSchedule());
video.addEventListener('seeking', cancelSponsorSchedule); video.addEventListener('seeking', cancelSponsorSchedule);
@@ -571,10 +572,12 @@ function sponsorsLookup(id: string, channelIDPromise?) {
} }
} }
if (zeroSecondSponsor && !skippedZeroSecond) { if (!video.paused && !switchingVideos) {
startSponsorSchedule(0); if (zeroSecondSponsor) {
} else { startSponsorSchedule(0);
startSponsorSchedule(); } else {
startSponsorSchedule();
}
} }
// Reset skip save // Reset skip save