From 9e6e3b023de98377c1c7a5605daf2f2122ce2178 Mon Sep 17 00:00:00 2001 From: Ajay Ramachandran Date: Sat, 6 Nov 2021 21:20:36 -0400 Subject: [PATCH] Fix small time differences between segments causing issues --- src/js-components/previewBar.ts | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/js-components/previewBar.ts b/src/js-components/previewBar.ts index c242e4df..c451edd2 100644 --- a/src/js-components/previewBar.ts +++ b/src/js-components/previewBar.ts @@ -12,6 +12,7 @@ import { getCategoryActionType, getSkippingText } from "../utils/categoryUtils"; const utils = new Utils(); const TOOLTIP_VISIBLE_CLASS = 'sponsorCategoryTooltipVisible'; +const MIN_CHAPTER_SIZE = 0.003; export interface PreviewBarSegment { segment: [number, number]; @@ -269,10 +270,10 @@ class PreviewBar { this.setupChapterSection(newSection, duration); newChapterBar.appendChild(newSection); - if (segment.segment[1] < this.videoDuration) { - const nextSegment = mergedSegments[i + 1]; + const nextSegment = mergedSegments[i + 1]; + const nextTime = nextSegment ? nextSegment.segment[0] : this.videoDuration; + if (this.timeToDecimal(nextTime - segment.segment[1]) > MIN_CHAPTER_SIZE) { const newBlankSection = originalSection.cloneNode(true) as HTMLElement; - const nextTime = nextSegment ? nextSegment.segment[0] : this.videoDuration; const blankDuration = nextTime - segment.segment[1]; this.setupChapterSection(newBlankSection, blankDuration); @@ -446,7 +447,7 @@ class PreviewBar { private chapterFilter(segment: PreviewBarSegment): boolean { return getCategoryActionType(segment.category) !== CategoryActionType.POI - && segment.segment.length === 2 && this.timeToDecimal(segment.segment[1] - segment.segment[0]) > 0.003; + && segment.segment.length === 2 && this.timeToDecimal(segment.segment[1] - segment.segment[0]) > MIN_CHAPTER_SIZE; } timeToPercentage(time: number): string {