Skip to content

Windows: prefer the virtual display and keep a game's cursor in the picture - #27

Draft
MrBeldum wants to merge 1 commit into
mainfrom
feat/windows-cursor-in-picture
Draft

MrBeldum wants to merge 1 commit into
mainfrom
feat/windows-cursor-in-picture

Conversation

@MrBeldum

Copy link
Copy Markdown
Owner

Uncommitted work from 2026-10-03 (Windows cursor handling for game streams), committed so it isn't lost. Draft: not yet run on Windows hardware (Hermes has been offline); CI's Windows job is the first compile of the Windows-only parts.

  • With capture on automatic, Latch prefers the Virtual Display Driver even while a physical monitor is connected; the engine restores the physical displays when the stream disconnects.
  • A windowless user task, LatchCursorUser, keeps a custom game cursor's whole shape inside the streamed display (crates/host/src/cursor.rs), so a cursor with a transparent top-left hotspot no longer disappears off the bottom/right edge. It follows resolution and cursor-shape changes, respects the game's own confinement, and lets go when the game hides its cursor.
  • Mac bundle staged in dist.noindex with the release workflow to match (the same change is in VPS desktops: own size, sizes below 1080p, Linux clipboard, pairing fix #26).

Checked on macOS: cargo fmt --check, clippy -D warnings for latch-host and latch-client.

🤖 Generated with Claude Code

…icture

Work from 2026-10-03, not yet tried on Windows hardware (Hermes offline).

- With capture on automatic, Latch prefers the Virtual Display Driver even
  while a physical monitor is connected; the engine restores the physical
  displays when the stream disconnects.
- A windowless user task (LatchCursorUser) keeps a custom game cursor's
  whole shape inside the streamed display (crates/host/src/cursor.rs), so
  a cursor with a transparent top-left hotspot no longer disappears off
  the bottom or right edge; it follows resolution and shape changes,
  respects the game's own confinement and lets go when the game hides
  its cursor.
- Mac bundle staged in dist.noindex, release workflow to match.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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