Skip to content

v3.6.4 - Theater Split Audit Pass

Choose a tag to compare

@SysAdminDoc SysAdminDoc released this 11 Apr 22:44
· 2027 commits to main since this release

Theater Split (stickyVideo) hardening. One high-impact user-visible fix plus two defensive cleanups.

Fixed

  • Wheel collision with YouTube volume control. The document-level wheel handler in stickyVideo was registered with { passive: true, capture: true } but never called stopPropagation() on events it acted on, so YouTube's own wheel-to-volume listener on #movie_player fired on the same event. Scrolling over the player to expand the split, or scrolling the open right panel past the top to collapse, was also adjusting the video volume at the same time. passive: true only restricts preventDefault() — stopPropagation() is still legal and is now called in each action branch. Same treatment applied to the matching touchmove handler.
  • _entering flag leak on early collapse. _expandSplit() sets _entering = true and arms a 500 ms fallback timer that calls onExpanded() if _entering is still true. _collapseSplit() did not reset the flag, so collapsing before the expand transition finished left the fallback timer to fire on an already-collapsed panel, re-running _triggerPlayerResize() and checkAllButtons() on stale state.
  • Divider drag orphans on alt-tab. The divider drag listener attaches mousemove / mouseup to window plus a full-viewport dragShield overlay. If the user alt-tabbed mid-drag or the pointer left the document before releasing the mouse button, mouseup could miss, leaving the shield covering the page and both listeners attached until the next drag. onUp is now also fired on window.blur and document.mouseleave so the drag cannot orphan.

Downloads

File Platform
astra-deck-chrome-v3.6.4.crx Chrome / Edge / Brave
astra-deck-chrome-v3.6.4.zip Chrome unpacked
astra-deck-firefox-v3.6.4.xpi Firefox 128+
astra-deck-firefox-v3.6.4.zip Firefox unpacked / source