[Feature] Keep hover (motion tracking) when CLAUDE_CODE_DISABLE_MOUSE_CLICKS=1, for plugin panes

Status Open
Reported on v2.1.296
Maintainer reply None cached
Activity 0 comments · opened Oct 10, 2026

Feature request

Version: 2.1.296 · Linux, VS Code integrated terminal over SSH (from Windows) · tui: fullscreen

Context

A plugin pane ($.ui.open) uses the documented hover props (hover={{ scope, display: 'flex' }}) to reveal a ticket's card when the pointer rests on its line. It works in a test harness, but never in my real terminal.

I keep CLAUDE_CODE_DISABLE_MOUSE_CLICKS=1 so that clicks over the transcript don't answer prompts and text selection stays usable. That setting also drops motion tracking, so hover can never fire.

Escape sequences Claude Code sends to the terminal with the Grillhouse pane open, captured with script:

| Setting | Modes enabled |
|---|---|
| CLAUDE_CODE_DISABLE_MOUSE_CLICKS=1 | ?1000h ?1006h (no ?1002h, no ?1003h) |
| unset / 0 | ?1000h ?1002h ?1003h ?1006h |

So a user who turns clicks off also loses every hover a plugin draws, and nothing in the plugin API or the docs says so.

Request

  1. Decouple hover from clicks: keep any-motion tracking (?1003h) under CLAUDE_CODE_DISABLE_MOUSE_CLICKS=1, and only ignore presses. Hover is passive: it can't answer a prompt by accident.
  2. Or a separate switch, e.g. CLAUDE_CODE_MOUSE_HOVER=1, so hover can be kept without clicks.
  3. Document it in the hover doc comments of BoxProps / ButtonProps: hover requires motion tracking, which CLAUDE_CODE_DISABLE_MOUSE_CLICKS turns off.

Related: #82886 (the fullscreen click/selection trade-off).

View original on GitHub ↗