aboutsummaryrefslogtreecommitdiff
path: root/src/app/input/mouse.rs
AgeCommit message (Collapse)Author
2026-05-19feat: add hosted product announcementsOgulcan Celik
2026-05-17feat: add selection autoscroll and fix stale selection on transitions (#129)leeeanh
When dragging to select text near pane edges, a 30ms recurring tick now continues scrolling and extending the selection while the mouse is idle. The autoscroll stops on MouseUp, key input, navigate action, cursor leaving the hot zone, scrollback boundary, missing metrics, or pane rect change. Also fixes pre-existing bugs where workspace/tab/pane transitions failed to clear selection state, which could cause stale selections to persist across views. Selection clearing on pane death is scoped to only the dying pane. Also fixes anchor_screen_pos returning pane-relative coordinates instead of screen coordinates, which caused false drag detection and spurious edge autoscroll on same-cell events when the pane has a non-zero origin. refs #128 Co-authored-by: leeanh <mac@macs-MacBook-Pro.local>
2026-05-17feat: add direct terminal attach streamOgulcan Celik
2026-05-17refactor: extract terminal state and runtime from panesOgulcan Celik
2026-05-16fix: keep split resize hitboxes off pane contentOgulcan Celik
fixes #120
2026-05-14feat: add tmux-style mouse capture configOgulcan Celik
2026-05-12feat: add agent cycling and tab wheel switchingOgulcan Celik
fixes #92
2026-05-11feat: add notification target keybindOgulcan Celik
2026-05-11feat: add optional pane border labelsOgulcan Celik
2026-05-08fix: clear agent toast after focusOgulcan Celik
2026-05-08feat: make agent toasts focus panesOgulcan Celik
2026-05-05feat: add mobile terminal layoutOgulcan Celik
2026-04-28fix: resize w claude code no flicker (#61)Yifeng He
* fix: mouse resize panel failed with claude-code no flicker * test: run pane mouse reporting drag tests inside tokio runtime Switch the new horizontal/vertical drag tests to `#[tokio::test]` so `PaneRuntime::test_with_screen_bytes` has a reactor when it calls `tokio::spawn`. CI was panicking with "there is no reactor running". * test: refresh git state in workspace drop slot test Workspace::test_new caches the parent repo's git branch at construction time. On master CI the herdr checkout has ref: refs/heads/master in HEAD, so the cache is populated and workspace_row_height returns 2. On PR CI actions/checkout uses a detached merge ref, git_branch returns None, row height becomes 1, and the drop-slot tie-break flips workspace_drop_index_at_row(2) from Some(0) to Some(1). Refresh git state after pointing identity_cwd at the per-test temp repo so the cache reflects the temp repo's HEAD.
2026-04-21feat: add persistent server-client sessionsCan Celik
Make herdr persistent by default. Launching herdr now starts or reattaches to a background session server. Clients can detach and reattach while panes and agent processes keep running. Session mode now supports multi-client attach, auto-detect startup, and a thin-client/headless-server split. This also refactors the large app, ui, input, pane, config, workspace, and persistence modules into smaller focused submodules, while preserving behavior and colocating tests with the code they exercise. Upgrade notes: - persistence mode is now the default - in-app quit detaches the current client instead of stopping the server - use `herdr server stop` to stop the background session - use `--no-session` for the old single-process behavior - default socket paths now live under the config directory