Skip to content

A window that traps the pointer with no visible way out - #217

Merged
dmitrat merged 1 commit into
mainfrom
studio-phase8
Aug 19, 2026
Merged

dmitrat merged 1 commit into
mainfrom
studio-phase8

Conversation

@dmitrat

@dmitrat dmitrat commented Aug 19, 2026

Copy link
Copy Markdown
Owner

Phase 8 of the fix plan, and the last of the code phases. Studio 1003 green, 1000 before.

The command palette answered the keyboard and nothing else: clicking outside did not close it,
clicking the button that opened it did not close it, a single click on an entry moved the highlight
and stopped there, and a double click did the same. Esc and Enter were the only way in and out.

  • A press on the scrim closes it — unless the press landed on the palette itself: a press inside
    is a press on a box, a list or an entry, and closing on those would take the window away mid-use.
  • A click on an entry runs it, the way Enter does.

Neither gesture replaces a key. They stop being the only way — which is the point: a palette is a
keyboard tool and nobody minds reaching for Esc, but a window that traps the pointer with no visible
way out is a corner somebody can get stuck in. It was found while automating the screenshots, where
it stopped the run until a key could be pressed by hand.

The plan also asked to check finding 17 here — the palette listed a multi-column index twice. It
reads the tree, which reads GetIndexesAsync, which Phase 1 collapsed; closed there.

Phases 1 through 8 are now all in main. What is left of the plan is Phase 0 — the probes that
need a running Studio — and the release.

🤖 Generated with Claude Code

Phase 8 of the fix plan, and the last of the code phases. Studio 1003 green, 1000 before.

The command palette answered the keyboard and nothing else. Clicking outside did not close it,
clicking the button that opened it did not close it, a single click on an entry moved the highlight
and stopped there, and a double click did the same. Esc and Enter were the only way in and the only
way out - which is fine for a keyboard tool and not fine for a window that has taken the pointer.

A press on the scrim closes it now, unless the press landed on the palette itself: a press inside is
a press on a box, a list or an entry, and closing on those would take the window away mid-use. A click
on an entry runs it, the way Enter does. Neither gesture replaces a key; they stop being the only way.

It was found while automating the screenshots, where it stopped the run until a key could be pressed
by hand. That is the clearest statement of what was wrong with it.

The plan also asked to check finding 17 here - the palette listed a multi-column index twice. It reads
the tree, which reads GetIndexesAsync, which phase 1 collapsed; closed there.

Phases 1 through 8 are now all in main. What is left of the plan is phase 0 - the probes that need a
running Studio - and the release.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@dmitrat
dmitrat merged commit 6973e5e into main Aug 19, 2026
1 check passed
@dmitrat
dmitrat deleted the studio-phase8 branch August 19, 2026 07:39
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