perf(epg): render only the timeline programmes near the visible range (J3)

Selecting a live channel rendered every programme block of its schedule
(about 240 for the Xtream mock) while the stream was starting: about 6,000
of J3's 6,199 renderer.domMutationsToPlaying. The ribbon now renders the
blocks, ticks and day dividers within half a viewport of the visible range;
the track keeps the full schedule's width, so positions, the scrollbar and
scroll-to-now are unchanged.

A resize reported before the scroll-to-now must not re-centre the window
(it once jumped to the schedule's start and back); resizes only widen it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
4grayandClaude Opus 5.5 committed 2026-10-04 11:30:31 +02:00
1 parent e8b181fcea
commit 67e0133f12
8 files changed
+702 -20

No files matched your search

@@ -0,0 +1,8 @@
---
type: perf
area: epg
---
Live channels start playing with less work competing for the first frame: the
programme guide below the player now draws only the programmes around the part
you are looking at, and fills in the rest as you scroll.