Skip to content

fix(launch): disable floating webcam preview without passthrough#321

Open
meiiie wants to merge 1 commit intowebadderallorg:mainfrom
meiiie:fix/win10-floating-webcam-preview
Open

fix(launch): disable floating webcam preview without passthrough#321
meiiie wants to merge 1 commit intowebadderallorg:mainfrom
meiiie:fix/win10-floating-webcam-preview

Conversation

@meiiie
Copy link
Copy Markdown
Collaborator

@meiiie meiiie commented Apr 23, 2026

Description

Disable the floating webcam preview when the HUD overlay cannot support mouse passthrough.

Motivation

Issue #320 reports that enabling the floating webcam preview on Windows 10 makes the desktop unusable outside the HUD. The problem is that the recording HUD expands to the full viewport for the draggable preview, but Windows 10 currently falls back to a non-passthrough overlay window.

Root Cause

When showRecordingWebcamPreview is enabled, the renderer reports a full-viewport HUD size so the floating preview can be dragged anywhere on screen. On platforms where isHudOverlayMousePassthroughSupported() is false, that turns the transparent HUD overlay into a fullscreen click blocker.

Changes

  • expose HUD mouse passthrough support to the renderer
  • only render the floating webcam preview when passthrough support is available
  • hide the floating preview toggle when the platform cannot safely support it
  • add focused helper tests for the gating logic

Related Issue(s)

Testing Guide

  • node ./node_modules/vitest/vitest.mjs run src/components/launch/floatingWebcamPreview.test.ts
  • node ./node_modules/typescript/bin/tsc --noEmit
  • node ./node_modules/@biomejs/biome/bin/biome check electron/windows.ts electron/preload.ts electron/electron-env.d.ts src/components/launch/LaunchWindow.tsx src/components/launch/floatingWebcamPreview.ts src/components/launch/floatingWebcamPreview.test.ts

Notes

This keeps the existing floating preview behavior on platforms where HUD passthrough is supported, while falling back to the non-floating webcam controls on platforms where a fullscreen transparent overlay would block the desktop.

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Apr 23, 2026

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: d8836007-1474-422a-bb73-0f4873a1c529

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@meiiie meiiie marked this pull request as ready for review April 23, 2026 10:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant