Add container fullscreen for crossfade, mobile watch layout fix, sitemap link on subscribe page

Promote video fullscreen to .watch-video-container so DJ crossfade
transitions remain seamless. Use display:contents on mobile watch-left
so sticky video sticks properly. Add z-index layering for desktop
watch mode scrolling. Add sitemap.xml link to subscribe page feeds.
This commit is contained in:
russell@unturf.com 2026-02-09 12:36:29 -05:00
parent 86a05a8b88
commit a3725e8070
3 changed files with 23 additions and 1 deletions

View file

@ -1 +1 @@
3ade78d
9820268

View file

@ -209,6 +209,26 @@
standbyMedia = createStandbyMedia(currentMediaType);
}
// --- Fullscreen: promote <video> fullscreen to container for seamless crossfade ---
// Native video controls fullscreen the <video> element directly. When the crossfade
// swaps videos the fullscreened element gets hidden, exiting fullscreen. Promoting
// fullscreen to the .watch-video-container keeps both videos inside the fullscreen
// element so the transition is invisible.
function promoteVideoFullscreen() {
var fsEl = document.fullscreenElement || document.webkitFullscreenElement;
if (!fsEl) return;
if (fsEl !== activeMedia && fsEl !== standbyMedia) return;
var container = fsEl.closest('.watch-video-container');
if (!container) return;
if (container.requestFullscreen) {
container.requestFullscreen().catch(function() {});
} else if (container.webkitRequestFullscreen) {
container.webkitRequestFullscreen();
}
}
document.addEventListener('fullscreenchange', promoteVideoFullscreen);
document.addEventListener('webkitfullscreenchange', promoteVideoFullscreen);
// --- Queue management ---
function saveQueue() {
try {

View file

@ -134,6 +134,8 @@
<a href="/rss.xml" target="_blank" class="shop-theme-link-color">RSS Feed</a>
&nbsp;|&nbsp;
<a href="/atom.xml" target="_blank" class="shop-theme-link-color">Atom Feed</a>
&nbsp;|&nbsp;
<a href="/sitemap.xml" target="_blank" class="shop-theme-link-color">Sitemap</a>
</p>
</div>