diff options
| author | Igor Soarez <igor@soarez.org> | 2026-11-05 19:45:08 +0200 |
|---|---|---|
| committer | Igor Soarez <igor@soarez.org> | 2026-11-05 19:45:08 +0200 |
| commit | 9575ead9c637a2dc482c00f417a1d784d46e076a (patch) | |
| tree | a47abc5722d4f978e7c94428e06634e88101152a /crates/dinggerd/src/watcher.rs | |
| parent | 5842b093cc502b46076423e4f8efdbbc568f86aa (diff) | |
name pi agents by their reported session name, not the terminal title; scroll a panel list taller than the screen
Diffstat (limited to 'crates/dinggerd/src/watcher.rs')
| -rw-r--r-- | crates/dinggerd/src/watcher.rs | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/crates/dinggerd/src/watcher.rs b/crates/dinggerd/src/watcher.rs index 9bad1fe..1cd282b 100644 --- a/crates/dinggerd/src/watcher.rs +++ b/crates/dinggerd/src/watcher.rs @@ -503,8 +503,11 @@ impl Watcher { change("@dingger_since", &pane.written_since, track.since.map(|s| s.to_string()).unwrap_or_default()); change("@dingger_error", &pane.written_error, error.to_string()); change("@agent", &pane.written_agent, pane.agent.map(detect_core::agent_label).unwrap_or("").to_string()); - let name = crate::names::display_name(pane.agent, &pane.pane_title, &pane.cwd, host_name()) - .unwrap_or_default(); + // The name its extension reports ("" for an unnamed session), else + // what the terminal title says (anyone can set a title). + let name = hooks::name(&pane.pane_id).unwrap_or_else(|| { + crate::names::display_name(pane.agent, &pane.pane_title, &pane.cwd, host_name()).unwrap_or_default() + }); change("@agent_name", &pane.written_name, name); // The session reference, for restore; it goes with the agent. match (pane.agent, hooks::session(&pane.pane_id)) { |
