mirror of
https://github.com/ajayyy/SponsorBlock.git
synced 2025-12-12 14:37:23 +03:00
Fix issues with mutes ending when highlights start
This commit is contained in:
@@ -1567,6 +1567,13 @@ function getStartTimes(sponsorTimes: SponsorTime[], includeIntersectingSegments:
|
|||||||
const includedTimes: ScheduledTime[] = [];
|
const includedTimes: ScheduledTime[] = [];
|
||||||
const scheduledTimes: number[] = [];
|
const scheduledTimes: number[] = [];
|
||||||
|
|
||||||
|
const shouldIncludeTime = (segment: ScheduledTime ) => (minimum === undefined
|
||||||
|
|| ((includeNonIntersectingSegments && segment.scheduledTime >= minimum)
|
||||||
|
|| (includeIntersectingSegments && segment.scheduledTime < minimum && segment.segment[1] > minimum)))
|
||||||
|
&& (!hideHiddenSponsors || segment.hidden === SponsorHideType.Visible)
|
||||||
|
&& segment.segment.length === 2
|
||||||
|
&& segment.actionType !== ActionType.Poi;
|
||||||
|
|
||||||
const possibleTimes = sponsorTimes.map((sponsorTime) => ({
|
const possibleTimes = sponsorTimes.map((sponsorTime) => ({
|
||||||
...sponsorTime,
|
...sponsorTime,
|
||||||
scheduledTime: sponsorTime.segment[0]
|
scheduledTime: sponsorTime.segment[0]
|
||||||
@@ -1574,7 +1581,7 @@ function getStartTimes(sponsorTimes: SponsorTime[], includeIntersectingSegments:
|
|||||||
|
|
||||||
// Schedule at the end time to know when to unmute and remove title from seek bar
|
// Schedule at the end time to know when to unmute and remove title from seek bar
|
||||||
sponsorTimes.forEach(sponsorTime => {
|
sponsorTimes.forEach(sponsorTime => {
|
||||||
if (!possibleTimes.some((time) => sponsorTime.segment[1] === time.scheduledTime)
|
if (!possibleTimes.some((time) => sponsorTime.segment[1] === time.scheduledTime && shouldIncludeTime(time))
|
||||||
&& (minimum === undefined || sponsorTime.segment[1] > minimum)) {
|
&& (minimum === undefined || sponsorTime.segment[1] > minimum)) {
|
||||||
possibleTimes.push({
|
possibleTimes.push({
|
||||||
...sponsorTime,
|
...sponsorTime,
|
||||||
@@ -1584,13 +1591,7 @@ function getStartTimes(sponsorTimes: SponsorTime[], includeIntersectingSegments:
|
|||||||
});
|
});
|
||||||
|
|
||||||
for (let i = 0; i < possibleTimes.length; i++) {
|
for (let i = 0; i < possibleTimes.length; i++) {
|
||||||
if ((minimum === undefined
|
if (shouldIncludeTime(possibleTimes[i])) {
|
||||||
|| ((includeNonIntersectingSegments && possibleTimes[i].scheduledTime >= minimum)
|
|
||||||
|| (includeIntersectingSegments && possibleTimes[i].scheduledTime < minimum && possibleTimes[i].segment[1] > minimum)))
|
|
||||||
&& (!hideHiddenSponsors || possibleTimes[i].hidden === SponsorHideType.Visible)
|
|
||||||
&& possibleTimes[i].segment.length === 2
|
|
||||||
&& possibleTimes[i].actionType !== ActionType.Poi) {
|
|
||||||
|
|
||||||
scheduledTimes.push(possibleTimes[i].scheduledTime);
|
scheduledTimes.push(possibleTimes[i].scheduledTime);
|
||||||
includedTimes.push(possibleTimes[i]);
|
includedTimes.push(possibleTimes[i]);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user