Skip to content

Present the workspace on the display the idle Miku occupies - #13

Merged
sionic-khope merged 1 commit into
mainfrom
fix/workspace-opens-on-miku-display
Jul 20, 2026
Merged

Present the workspace on the display the idle Miku occupies#13
sionic-khope merged 1 commit into
mainfrom
fix/workspace-opens-on-miku-display

Conversation

@sionic-khope

Copy link
Copy Markdown
Contributor

Summary

  • Fixes the dual-monitor bug: idle Miku on the right monitor, but opening it presented the workspace on the left monitor.
  • Root cause: the workspace window is created once and reused; reopening never moved it off the display it was first created on, while applicationDidChangeScreenParameters rebinds the Miku panel to the display under the pointer.
  • Every presentation now places the window on the panel's current screen via a pure WorkspaceDisplayPlacement decision: cross-display → move to the target's visible frame; same display → keep the user's manual size/position; mid-full-screen → untouched.

Test plan

  • swift build -Xswiftc -warnings-as-errors clean
  • swift test -Xswiftc -warnings-as-errors: 204/204 (new: testWorkspacePresentsOnTheDisplayTheIdleMikuOccupies covering the dual-display matrix with the user's real geometry)

🤖 Generated with Claude Code

https://claude.ai/code/session_015peMZyaHEmxDzyzNyhYeR5

The workspace window is created once and reused, so reopening it kept the
display it was first created on even after the Miku panel moved to another
monitor (screen-parameter changes rebind the panel to the display under
the pointer). Each presentation now moves the window to the panel's
current screen; same-screen opens keep the user's manual frame, and
in-flight full-screen transitions are left alone.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015peMZyaHEmxDzyzNyhYeR5
@sionic-khope
sionic-khope merged commit ad87d85 into main Jul 20, 2026
1 of 2 checks passed
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