diff options
| author | Ogulcan Celik <ogulcancelik@gmail.com> | 2026-07-13 03:26:03 +0300 |
|---|---|---|
| committer | Ogulcan Celik <ogulcancelik@gmail.com> | 2026-07-13 03:30:13 +0300 |
| commit | 5cfe5e5e730246948b0c9428ad876b6938590aad (patch) | |
| tree | 53d4bbe1aff6887f63f279eed1b5e4e11e7331b7 /src/workspace | |
| parent | 7f3364a468f7dcfd8c9c84e5737fe5699f0e3a93 (diff) | |
feat: add configurable sidebar metadata tokens
Diffstat (limited to 'src/workspace')
| -rw-r--r-- | src/workspace/aggregate.rs | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/workspace/aggregate.rs b/src/workspace/aggregate.rs index 365decbf..a3eed860 100644 --- a/src/workspace/aggregate.rs +++ b/src/workspace/aggregate.rs @@ -12,14 +12,16 @@ pub struct PaneDetail { pub tab_idx: usize, pub tab_label: String, pub label: String, + pub pane_label: Option<String>, + pub terminal_title: Option<String>, + pub terminal_title_stripped: Option<String>, pub agent_label: String, - #[allow(dead_code)] pub agent: Option<Agent>, pub state: AgentState, pub seen: bool, pub last_agent_state_change_seq: Option<u64>, - pub custom_status: Option<String>, pub state_labels: HashMap<String, String>, + pub tokens: HashMap<String, String>, } impl Tab { @@ -57,13 +59,18 @@ impl Tab { tab_idx, tab_label: tab_label.to_string(), label: agent_label.clone(), + pane_label: terminal + .effective_title() + .or_else(|| terminal.manual_label.clone()), + terminal_title: terminal.terminal_title.clone(), + terminal_title_stripped: terminal.terminal_title_stripped(), agent_label, agent: terminal.effective_known_agent(), state: terminal.state, seen: pane.seen, last_agent_state_change_seq: terminal.last_agent_state_change_seq, - custom_status: presentation.custom_status, state_labels: presentation.state_labels, + tokens: terminal.metadata_tokens.values(), }) }) .collect() |
