load font before marquee setup, fix marquee after rotation

Hunter
Sunday, October 25th, 2026 at 10:04 PM

resources/script.js+6-13

resources/script.js
173  				})
174  				.catch(loadTracksFromCache);
175  
    -		return Promise.all([detectOptional, loadTracks]);
176 +		const loadFont = document.fonts.load('1em "Basteleur Moonlight"').catch(() => {});
177 +		return Promise.all([detectOptional, loadFont, loadTracks]);
178  	})
179  	.then((results) => {
180  		const data = results[results.length - 1];

559  }
560  
561  function pauseMarquee() {
    -	if (!marqueeAnimating) return;
562  	marqueePaused = true;
563 +	if (!marqueeAnimating) return;
564  
565  	if (marqueeRafId) {
566  		cancelAnimationFrame(marqueeRafId);

573  }
574  
575  function resumeMarquee() {
    -	if (!marqueeAnimating) return;
576  	marqueePaused = false;
577 +	if (!marqueeAnimating) return;
578  	startMarqueeMotion();
579  }
580  
    -window.addEventListener('resize', () => {
581 +new ResizeObserver(() => {
582  	if (!marqueeOriginalText) return;
583  	const textSpan = currentTrackDisplay.querySelector('span');
584  	if (!textSpan) return;

594  	}
595  
596  	setupMarquee({ preserveOffset: true });
    -});
    -
    -document.fonts.addEventListener('loadingdone', () => {
    -	if (!marqueeOriginalText) return;
    -	const textSpan = currentTrackDisplay.querySelector('span');
    -	if (!textSpan) return;
    -	textSpan.textContent = marqueeOriginalText;
    -	setupMarquee({ preserveOffset: true });
    -});
597 +}).observe(currentTrackDisplay);
598  
599  function togglePlayPause() {
600  	if (!playerReady) return;