aboutsummaryrefslogtreecommitdiff
path: root/docs
diff options
context:
space:
mode:
authorOgulcan Celik <ogulcancelik@gmail.com>2026-07-02 21:57:59 +0300
committerOgulcan Celik <ogulcancelik@gmail.com>2026-07-02 21:59:06 +0300
commitd1471e64834d0c7daf072f11c01c30db35324850 (patch)
tree5763e6da098d3aabe5932decf26e5cf1d31c814c /docs
parent848554517ae6473caf61f738d60def90f77e1dc9 (diff)
fix: draw host cursor on windows
refs #930
Diffstat (limited to 'docs')
-rw-r--r--docs/next/website/src/content/docs/configuration.mdx3
-rw-r--r--docs/next/website/src/content/docs/windows-beta.mdx22
2 files changed, 21 insertions, 4 deletions
diff --git a/docs/next/website/src/content/docs/configuration.mdx b/docs/next/website/src/content/docs/configuration.mdx
index b0a0f59c..f7bcb616 100644
--- a/docs/next/website/src/content/docs/configuration.mdx
+++ b/docs/next/website/src/content/docs/configuration.mdx
@@ -303,6 +303,7 @@ sidebar_max_width = 36
sidebar_collapsed_mode = "compact"
mobile_width_threshold = 64
mouse_capture = true
+host_cursor = "auto"
right_click_passthrough_modifier = ""
redraw_on_focus_gained = true
mouse_scroll_lines = 3
@@ -328,6 +329,8 @@ The agent panel shows all agents across all spaces. `agent_panel_sort` can be `s
Set `mouse_capture = false` if you want your terminal to handle normal clicks, such as command-clicking URLs. With mouse capture enabled, Ctrl-click opens pane links when your terminal sends that modified click to Herdr. This includes macOS; Cmd-click is not reported separately from plain click while Herdr captures mouse input. Use Shift-Ctrl-click on Linux or Shift-Cmd-click on macOS for the terminal-native bypass path.
+`host_cursor` controls whether Herdr uses the outer terminal's native cursor or draws its own cursor as terminal cell content. The default, `auto`, draws Herdr's cursor on Windows to avoid ConPTY cursor flicker during active redraws, and uses the native cursor elsewhere. Set it to `native` to always use the outer terminal cursor, or `drawn` to always use Herdr's drawn cursor.
+
Set `right_click_passthrough_modifier = "ctrl"` if you want Ctrl-right-click, hold, and drag gestures inside mouse-reporting pane apps to reach the app instead of opening Herdr's pane menu. The default is empty, which disables this passthrough. Supported modifiers are `ctrl`, `alt`, `cmd`, `super`, `meta`, and `hyper`; `shift` is rejected because many terminals reserve Shift+mouse for their own mouse bypass.
Set `redraw_on_focus_gained = false` to avoid the visible full-screen refresh when switching back to Herdr. The default is `true` because a full redraw recovers from rare stale or dirty host terminal surfaces.
diff --git a/docs/next/website/src/content/docs/windows-beta.mdx b/docs/next/website/src/content/docs/windows-beta.mdx
index 52d25b35..dbfe6964 100644
--- a/docs/next/website/src/content/docs/windows-beta.mdx
+++ b/docs/next/website/src/content/docs/windows-beta.mdx
@@ -50,6 +50,7 @@ Plugins support `windows` as a manifest platform in preview. GitHub install, loc
| Clipboard image paste to agents | unverified |
| CJK hidden-cursor reveal | beta |
| Kitty graphics rendering | unverified |
+| Host cursor rendering | beta |
Herdr can launch panes in the right directory and can create the initial workspace from the directory where you started Herdr. PowerShell directory changes after startup are different: the process field Herdr can inspect does not reliably track later logical `cd` changes. Use Herdr integrations or prompt shell integration for live cwd reporting.
@@ -57,16 +58,29 @@ Windows Terminal may support image paste paths for specific agents, but Herdr's
Kitty graphics remains experimental and is not claimed as Windows-supported yet. Leave `experimental.kitty_graphics = false` unless you are specifically testing image rendering in Windows Terminal.
-## Copy and paste
+## Known caveats
-Herdr's pane text copy works on Windows beta. Drag-select text inside a pane to copy through Herdr.
+### Cursor rendering
-For text paste, use `ctrl+shift+v` in Windows Terminal. Multiline text paste is bracketed so shells and agent prompts receive it as one paste instead of submitting each line separately. Hold `shift` and right-click to use the outer terminal paste action instead of sending the click through Herdr.
+Windows terminals run Herdr through ConPTY, and native terminal cursors can flicker, jump, or briefly show stale positions during active full-screen redraws. Herdr's default `host_cursor = "auto"` draws Herdr's cursor as terminal cell content on Windows, while Linux and macOS keep using the native terminal cursor. The Windows trade-off is a steady non-blinking cursor inside Herdr instead of the outer terminal's native blink, shape, and cursor color.
+
+To opt back into the outer terminal cursor on Windows, set:
+
+```toml
+[ui]
+host_cursor = "native"
+```
-## Keyboard and mouse limitations
+### Keyboard and mouse
Windows terminals do not all report modified keys in the same shape. Herdr preserves mouse reporting and `ctrl+j` in Windows Terminal and Alacritty on Windows, but `shift+enter` only works when the outer terminal reports it as a distinct modified Enter key. If Windows or the terminal reports it as plain Enter, Herdr forwards plain Enter.
+## Copy and paste
+
+Herdr's pane text copy works on Windows beta. Drag-select text inside a pane to copy through Herdr.
+
+For text paste, use `ctrl+shift+v` in Windows Terminal. Multiline text paste is bracketed so shells and agent prompts receive it as one paste instead of submitting each line separately. Hold `shift` and right-click to use the outer terminal paste action instead of sending the click through Herdr.
+
## Not supported on Windows beta
| Capability | Status |