aboutsummaryrefslogtreecommitdiff
path: root/src/client/shell/endpoints.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/shell/endpoints.rs')
-rw-r--r--src/client/shell/endpoints.rs8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/client/shell/endpoints.rs b/src/client/shell/endpoints.rs
index 420f7131..d3823d54 100644
--- a/src/client/shell/endpoints.rs
+++ b/src/client/shell/endpoints.rs
@@ -208,12 +208,18 @@ impl ClientShellState {
let Some(snapshot) = endpoint.snapshot.clone() else {
return false;
};
- if endpoint_id != &self.active_endpoint_id {
+ let switching_endpoint = endpoint_id != &self.active_endpoint_id;
+ let agent_scroll = self.agent_scroll;
+ if switching_endpoint {
self.active_endpoint_id = endpoint_id.clone();
self.pane_surface = None;
self.pending_pane_surface = None;
}
self.apply_active_snapshot(snapshot);
+ if switching_endpoint {
+ // The aggregate agent list belongs to the client, not one endpoint.
+ self.agent_scroll = agent_scroll;
+ }
true
}