2 months ago
7a1d9df`openFullscreenPlayer` passed the monitor's PHYSICAL pixel geometry straight into `WebviewWindow`'s x/y/width/height, which Tauri interprets as LOGICAL pixels, and never requested fullscreen. On HiDPI or mixed-DPI setups the window did not coincide with the monitor, so the `bg-black` window showed through as a band. On top of that, the audience stage permanently reserved 144px for controls that auto-hide anyway, leaving a dead strip along the bottom even while they were hidden. Convert the geometry with the monitor's scaleFactor and create the window borderless + fullscreen so the viewport matches the monitor at any scale factor, drop the reserved inset, and give the audience lyric list a half-viewport spacer at each end so the first and last lines can center like every other line (paged plain text still fills the viewport exactly, so it gets neither). The controls' auto-hide was already a plain 3s pointer-idle timer with no dependence on playback state; what was missing is that a pointer resting ON the bar still faded it out from under the user. Keep the idle timer, add a hover guard, switch to pointer events so pen and touch also wake it, and hide the OS cursor along with the controls so it cannot linger as a bright dot on a projected screen. Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Parente75a5e9