Skip to content

fix(ui): mouse scroll + input perf; OpenCode Go routing cleanup - #44

Merged
Patel230 merged 10 commits into
mainfrom
feat/remove-opencodego-simplify-routing
Jun 13, 2026
Merged

fix(ui): mouse scroll + input perf; OpenCode Go routing cleanup#44
Patel230 merged 10 commits into
mainfrom
feat/remove-opencodego-simplify-routing

Conversation

@Patel230

@Patel230 Patel230 commented Jun 13, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Fix Cursor mouse wheel: scroll chat history only when pointer is over chat; ignore input/footer; Up/Down navigates input history
  • Speed up prompt input (motion fast-path, cached footer layout, conditional mouse-leak sanitize)
  • Simplify provider routing (drop cross-provider fallback); bump eyrie submodule to d1b4a57
  • Recover MiniMax reasoning-only streams in engine via single Chat fallback

Dependency

Merge eyrie PR first (submodule points to d1b4a57 on feat/remove-opencodego-simplify-catalog).

Test plan

  • go test ./cmd/... -run 'Mouse|Viewport|Scroll|Copy'
  • Rebuild hawk and verify wheel scroll over chat vs input in Cursor terminal
  • Verify typing feels responsive after mouse motion
  • Test OpenCode Go model (e.g. minimax-m3) after eyrie merge

Patel230 added 10 commits June 13, 2026 19:03
Give users OpenCode-style ways to copy chat and input text when alt-screen
mouse capture blocks native selection: /copy modes, /select, /mouse, and
Ctrl+Shift+C, plus tui_mouse in settings.
Prevent lipgloss input borders from rendering replacement glyphs when wider
than the terminal, and pin eyrie so OpenCode Go deployments use the dual-
protocol client that falls back when MiniMax returns reasoning-only streams.
Align router and tier resolution with eyrie catalog-only paths after
removing opencodego and legacy tier candidate lookups.
Pin eyrie at ff82521 with live /models discovery and chat/completions-only
routing for OpenCode Go, aligned with standalone eyrie feature branch.
Wheel over chat scrolls history; wheel over input is ignored. Up/Down in the prompt navigate input history. Sync external/eyrie for OpenCode Go ProtocolRouter.
…recovery

Align chat/footer mouse zones with View layout, route wheel to chat only,
and keep Up/Down on input history. Recover reasoning-only OpenCode Go streams
via Chat fallback instead of repeating broken stream retries; bump eyrie d1b4a57.
Track pointer position and remap stale bottom-row wheel reports from Cursor's terminal. Enable motion tracking, derive scroll zones from footer height, and stop stream follow/viewport refresh from undoing manual scroll.
Fast-path mouse motion to pointer tracking only, cache footer layout measurements, and sanitize input only when leak markers are present.
Skip clipboard e2e when xclip unavailable, remove unused helpers, fix tier tests for embedded catalog, and emit reasoning-only stream errors directly.
@Patel230
Patel230 merged commit 5504f15 into main Jun 13, 2026
18 checks passed
@Patel230
Patel230 deleted the feat/remove-opencodego-simplify-routing branch June 13, 2026 17:04
Patel230 added a commit that referenced this pull request Jun 15, 2026
* feat(cmd): add TUI copy, selection, and mouse capture controls

Give users OpenCode-style ways to copy chat and input text when alt-screen
mouse capture blocks native selection: /copy modes, /select, /mouse, and
Ctrl+Shift+C, plus tui_mouse in settings.

* fix(cmd): clip footer borders and bump eyrie for OCG MiniMax routing

Prevent lipgloss input borders from rendering replacement glyphs when wider
than the terminal, and pin eyrie so OpenCode Go deployments use the dual-
protocol client that falls back when MiniMax returns reasoning-only streams.

* refactor(routing): drop cross-provider fallback and simplify cost tiers

Align router and tier resolution with eyrie catalog-only paths after
removing opencodego and legacy tier candidate lookups.

* chore(deps): bump eyrie for OpenCode Go OpenAI-compatible provider

Pin eyrie at ff82521 with live /models discovery and chat/completions-only
routing for OpenCode Go, aligned with standalone eyrie feature branch.

* fix(ui): verify mouse wheel scrolls chat only; bump eyrie to b8cc975

Wheel over chat scrolls history; wheel over input is ignored. Up/Down in the prompt navigate input history. Sync external/eyrie for OpenCode Go ProtocolRouter.

* fix(ui,engine): mouse scroll zones, input history, MiniMax reasoning recovery

Align chat/footer mouse zones with View layout, route wheel to chat only,
and keep Up/Down on input history. Recover reasoning-only OpenCode Go streams
via Chat fallback instead of repeating broken stream retries; bump eyrie d1b4a57.

* fix(ui): Cursor mouse wheel scrolls chat, not input footer

Track pointer position and remap stale bottom-row wheel reports from Cursor's terminal. Enable motion tracking, derive scroll zones from footer height, and stop stream follow/viewport refresh from undoing manual scroll.

* perf(ui): speed up prompt input while keeping mouse leak filtering

Fast-path mouse motion to pointer tracking only, cache footer layout measurements, and sanitize input only when leak markers are present.

* style: gofumpt format for CI

* fix(ci): lint and test fixes for PR #44

Skip clipboard e2e when xclip unavailable, remove unused helpers, fix tier tests for embedded catalog, and emit reasoning-only stream errors directly.
Patel230 added a commit that referenced this pull request Jun 18, 2026
* feat(cmd): add TUI copy, selection, and mouse capture controls

Give users OpenCode-style ways to copy chat and input text when alt-screen
mouse capture blocks native selection: /copy modes, /select, /mouse, and
Ctrl+Shift+C, plus tui_mouse in settings.

* fix(cmd): clip footer borders and bump eyrie for OCG MiniMax routing

Prevent lipgloss input borders from rendering replacement glyphs when wider
than the terminal, and pin eyrie so OpenCode Go deployments use the dual-
protocol client that falls back when MiniMax returns reasoning-only streams.

* refactor(routing): drop cross-provider fallback and simplify cost tiers

Align router and tier resolution with eyrie catalog-only paths after
removing opencodego and legacy tier candidate lookups.

* chore(deps): bump eyrie for OpenCode Go OpenAI-compatible provider

Pin eyrie at ff82521 with live /models discovery and chat/completions-only
routing for OpenCode Go, aligned with standalone eyrie feature branch.

* fix(ui): verify mouse wheel scrolls chat only; bump eyrie to b8cc975

Wheel over chat scrolls history; wheel over input is ignored. Up/Down in the prompt navigate input history. Sync external/eyrie for OpenCode Go ProtocolRouter.

* fix(ui,engine): mouse scroll zones, input history, MiniMax reasoning recovery

Align chat/footer mouse zones with View layout, route wheel to chat only,
and keep Up/Down on input history. Recover reasoning-only OpenCode Go streams
via Chat fallback instead of repeating broken stream retries; bump eyrie d1b4a57.

* fix(ui): Cursor mouse wheel scrolls chat, not input footer

Track pointer position and remap stale bottom-row wheel reports from Cursor's terminal. Enable motion tracking, derive scroll zones from footer height, and stop stream follow/viewport refresh from undoing manual scroll.

* perf(ui): speed up prompt input while keeping mouse leak filtering

Fast-path mouse motion to pointer tracking only, cache footer layout measurements, and sanitize input only when leak markers are present.

* style: gofumpt format for CI

* fix(ci): lint and test fixes for PR #44

Skip clipboard e2e when xclip unavailable, remove unused helpers, fix tier tests for embedded catalog, and emit reasoning-only stream errors directly.
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