Skip to content

fix: stabilize Stay overlays and guard borders - #13

Merged
avatarneil merged 1 commit into
mainfrom
neil/performance-overlays
May 15, 2026
Merged

avatarneil merged 1 commit into
mainfrom
neil/performance-overlays

Conversation

@avatarneil

Copy link
Copy Markdown
Owner

Summary

Stay overlays now respond faster and cover the right display surfaces while guarding. The guard handle avoids redundant native resize calls, the locked overlay can scroll on constrained windows instead of clipping, and the blue guard border is created per display with each monitor's own scale-aware coordinates.

The launch intro animation is intentionally unchanged.

Performance And Behavior

Area Before After
Guard handle reveal repeated hover/focus events could invoke native resize repeatedly repeated events are idempotent and only real state changes call native resize
Guard handle collapse 180 ms hover-out delay 60 ms hover-out delay
Shell motion transitions included layout/paint-heavy properties transitions stay on compositor-friendly properties
Locked overlay constrained overlays clipped content constrained overlays scroll inside the panel
Guard border one border window followed the main Stay window's monitor one border window is positioned for each available display
Mixed-scale displays secondary borders could be placed through the primary display scale space border placement uses each target display's scale factor

Validation

  • bun run test
  • bun run typecheck
  • cargo test
  • bun run frontend:build
  • git diff --check

Compound Engineering
Codex

@avatarneil
avatarneil enabled auto-merge (squash) May 15, 2026 03:00
@avatarneil
avatarneil merged commit 188373d into main May 15, 2026
4 checks passed
@avatarneil
avatarneil deleted the neil/performance-overlays branch May 15, 2026 03:19
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