Skip to content

fix(desktop-gpui): skip the picker glass capture on Windows display and window pickers - #3525

Merged
richiemcilroy merged 1 commit into
mainfrom
fix/gpui-windows-picker-backdrop
Oct 28, 2026
Merged

richiemcilroy merged 1 commit into
mainfrom
fix/gpui-windows-picker-backdrop

Conversation

@richiemcilroy

@richiemcilroy richiemcilroy commented Oct 28, 2026 •

Copy link
Copy Markdown
Member

On Windows, the 0.6.2 display and window pickers show hard-edged lighter blocks behind their glass panels. The target window's content shows through them, and they flicker each time the desktop capture refreshes. In one frame of the display picker, the block held the whole desktop shrunk into the panels' region. 0.6.1 doesn't have this.

Cause

Backdrop::layer paints the desktop capture under each glass pane, dilated by 24 px. That only blends in when the overlay around the panes lets the live desktop through. On Windows, the display and window pickers composite their target fill as opaque navy. 0.6.1 draws the same navy, so the opaque fill isn't new. Against an opaque fill, the patches of capture show up as visible blocks. The area picker's dim is see-through, so its glass reads correctly.

Change

sync_backdrop now asks backdrop_suits(mode) before it captures. On Windows, the display and window pickers take no capture, and their panes sit on the fallback fill, the same as on Linux, where no capture is possible. Area and camera-only pickers, and macOS everywhere, are unchanged.

Testing

  • Unit test windows_display_and_window_pickers_take_no_backdrop.
  • Reproduced with the 0.6.2 release build (publish run 40753381400) on Windows Server 2025 with an NVIDIA T4 (GRID driver), in the console session. A remote session keeps windows in captures, so the glass falls back there and the bug never shows. Screens were captured with Desktop Duplication. 0.6.1 on the same machine shows the same navy fill without the blocks.
  • The fixed build on the same machine: results below.

RetriggerView in GreptileConfidence Score: 5/5

The PR appears safe to merge.

Summary

This PR skips desktop backdrop captures for Windows display and window pickers, so captured desktop patches no longer appear behind their glass panes.

  • Windows display and window pickers use the fallback fill instead of desktop captures.

Review was based on code inspection. Tests and native Windows visual checks were not run; the review environment is Linux.

Reviews (1) · Last reviewed commit: "fix(desktop-gpui): skip the picker glass..." · Reviewed by Greptile

@vercel

vercel Bot commented Oct 28, 2026

Copy link
Copy Markdown
Contributor

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
cap-status Ready Ready Preview Oct 28, 2026 8:21pm UTC

@richiemcilroy
richiemcilroy marked this pull request as ready for review October 28, 2026 20:44
@richiemcilroy
richiemcilroy merged commit 52fcdc8 into main Oct 28, 2026
61 of 63 checks passed

This branch was successfully deployed

2 active deployments
Preview – cap-web — b765e74c Deployed Oct 28, 2026 by vercel[bot]
Preview – cap-status — b765e74c Deployed Oct 28, 2026 by vercel[bot]
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