aboutsummaryrefslogtreecommitdiff
path: root/src/client/shell/endpoints.rs
diff options
context:
space:
mode:
authorCan Celik <ogulcancelik@gmail.com>2026-09-18 21:50:26 +0300
committerGitHub <noreply@github.com>2026-09-18 21:50:26 +0300
commit028780cebccc135d67a9ff97fbb0b11a150608de (patch)
treeb4282db58167539473fa1f0a7f4acd569db9ec53 /src/client/shell/endpoints.rs
parent241063f7ffb9583ba9b3438b32a82fcec3cf32a3 (diff)
fix: reveal selected agent when cycling the sidebar (#4355)
* fix: reveal selected agent when cycling the sidebar * fix: reveal agent after endpoint activation
Diffstat (limited to 'src/client/shell/endpoints.rs')
-rw-r--r--src/client/shell/endpoints.rs7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/client/shell/endpoints.rs b/src/client/shell/endpoints.rs
index c27358e5..3d1d419b 100644
--- a/src/client/shell/endpoints.rs
+++ b/src/client/shell/endpoints.rs
@@ -195,6 +195,10 @@ impl ClientShellState {
}
pub(crate) fn activate_endpoint_projection(&mut self, endpoint_id: &ClientEndpointId) -> bool {
+ let pending_agent_reveal = self
+ .pending_agent_reveal
+ .take_if(|(target_endpoint, _)| target_endpoint == endpoint_id);
+ let agent_body_height = self.hits.agent_body.height;
let Some(endpoint) = self
.endpoints
.iter()
@@ -221,6 +225,9 @@ impl ClientShellState {
// The aggregate agent list belongs to the client, not one endpoint.
self.agent_scroll = agent_scroll;
}
+ if let Some((_, pane_id)) = pending_agent_reveal {
+ self.reveal_endpoint_agent(endpoint_id, &pane_id, agent_body_height);
+ }
true
}