Fixed sponsor skipping after quickly playing and pausing.

This commit is contained in:
Ajay Ramachandran
2020-03-30 19:07:59 -04:00
parent b21a59f4e5
commit b6172c6d9b

View File

@@ -21,7 +21,7 @@ var UUIDs = [];
var sponsorVideoID = null;
// Skips are scheduled to ensure precision.
// Skips are rescheduled every seeked event.
// Skips are rescheduled every seeking event.
// Skips are canceled every seeking event
var currentSkipSchedule: NodeJS.Timeout = null;
var seekListenerSetUp = false
@@ -35,6 +35,9 @@ var sponsorSkipped = [];
//the video
var video: HTMLVideoElement;
/** The last time this video was seeking to */
var lastVideoTime: number = null;
var onInvidious;
var onMobileYouTube;
@@ -534,10 +537,26 @@ function sponsorsLookup(id: string, channelIDPromise?) {
}
});
video.addEventListener('seeking', () => {
if (!video.paused) startSponsorSchedule();
// Reset lastCheckVideoTime
lastCheckVideoTime = -1
lastCheckTime = 0;
lastVideoTime = video.currentTime;
if (!video.paused){
startSponsorSchedule();
}
});
video.addEventListener('ratechange', () => startSponsorSchedule());
video.addEventListener('pause', cancelSponsorSchedule);
video.addEventListener('pause', () => {
// Reset lastCheckVideoTime
lastCheckVideoTime = -1;
lastCheckTime = 0;
lastVideoTime = video.currentTime;
cancelSponsorSchedule();
});
startSponsorSchedule();
}