aboutsummaryrefslogtreecommitdiff
path: root/src/api
diff options
context:
space:
mode:
Diffstat (limited to 'src/api')
-rw-r--r--src/api/schema/server.rs2
-rw-r--r--src/api/schema/tests.rs5
-rw-r--r--src/api/server.rs6
3 files changed, 11 insertions, 2 deletions
diff --git a/src/api/schema/server.rs b/src/api/schema/server.rs
index 8bace6e0..7ceda633 100644
--- a/src/api/schema/server.rs
+++ b/src/api/schema/server.rs
@@ -16,4 +16,6 @@ pub struct ServerLiveHandoffParams {
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize, schemars::JsonSchema)]
pub struct ServerCapabilities {
pub live_handoff: bool,
+ #[serde(default)]
+ pub detached_server_daemon: bool,
}
diff --git a/src/api/schema/tests.rs b/src/api/schema/tests.rs
index 01ec9baa..5106fafe 100644
--- a/src/api/schema/tests.rs
+++ b/src/api/schema/tests.rs
@@ -465,7 +465,10 @@ fn success_response_round_trips() {
result: ResponseResult::Pong {
version: "0.1.2".into(),
protocol: 6,
- capabilities: Some(ServerCapabilities { live_handoff: true }),
+ capabilities: Some(ServerCapabilities {
+ live_handoff: true,
+ detached_server_daemon: true,
+ }),
},
};
diff --git a/src/api/server.rs b/src/api/server.rs
index d01f4199..37b464ac 100644
--- a/src/api/server.rs
+++ b/src/api/server.rs
@@ -62,6 +62,7 @@ pub fn start_server(
event_hub,
Some(ServerCapabilities {
live_handoff: crate::platform::capabilities().live_handoff,
+ detached_server_daemon: crate::platform::current_process_is_detached_server_daemon(),
}),
)
}
@@ -743,7 +744,10 @@ mod tests {
method: Method::Ping(crate::api::schema::PingParams::default()),
},
&tx,
- Some(ServerCapabilities { live_handoff: true }),
+ Some(ServerCapabilities {
+ live_handoff: true,
+ detached_server_daemon: true,
+ }),
);
let parsed: SuccessResponse = serde_json::from_str(&response).unwrap();