feat(studio): fullscreen preview mode (F key)

Add distraction-free fullscreen mode using the HTML5 Fullscreen API.
Press F to enter fullscreen (Esc to exit). When active, the composition
fills the screen — timeline, sidebars, and editing overlays are hidden
while all playback shortcuts (Space, J/K/L, arrows, etc.) remain
functional. A fullscreen toggle button is also added to player controls.

Closes #995
This commit is contained in:
Miguel Ángel
2026-05-21 11:11:28 -04:00
parent 114b83bbf6
commit 9e7eb10edd
3 changed files with 118 additions and 6 deletions
@@ -248,6 +248,24 @@ export function useAppHotkeys({
}
}
// F — toggle fullscreen preview
if (
event.key.toLowerCase() === "f" &&
!event.metaKey &&
!event.ctrlKey &&
!event.altKey &&
!event.shiftKey &&
!isEditableTarget(event.target)
) {
event.preventDefault();
if (document.fullscreenElement) {
void document.exitFullscreen();
} else {
document.querySelector<HTMLElement>("[data-studio-fullscreen-target]")?.requestFullscreen();
}
return;
}
// Delete / Backspace — remove selected element (timeline clip or preview selection)
if (
(event.key === "Delete" || event.key === "Backspace") &&