aboutsummaryrefslogtreecommitdiff
path: root/tests/support/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/support/mod.rs')
-rw-r--r--tests/support/mod.rs12
1 files changed, 12 insertions, 0 deletions
diff --git a/tests/support/mod.rs b/tests/support/mod.rs
index 68337ade..b2dae4be 100644
--- a/tests/support/mod.rs
+++ b/tests/support/mod.rs
@@ -21,6 +21,7 @@ pub const SERVER_MESSAGE_PANE_SURFACE: u32 = 13;
pub const SERVER_MESSAGE_SEMANTIC_NOTIFICATION: u32 = 14;
pub const SERVER_MESSAGE_PANE_SURFACE_PATCH: u32 = 19;
const CLIENT_MESSAGE_CLIENT_SHELL_PANE_INPUT: u32 = 13;
+const CLIENT_MESSAGE_CLIENT_SHELL_FOCUS: u32 = 18;
const CLIENT_MESSAGE_ENDPOINT_CONTROL: u32 = 20;
pub fn register_spawned_herdr_pid(pid: Option<u32>) {
@@ -387,6 +388,17 @@ pub fn send_client_shell_shift_enter(stream: &mut UnixStream, pane_id: &str) ->
.map_err(|e| format!("flush client shell key: {e}"))
}
+pub fn send_client_shell_focus(stream: &mut UnixStream, focused: bool) -> Result<(), String> {
+ let mut payload = encode_varint_u32(CLIENT_MESSAGE_CLIENT_SHELL_FOCUS);
+ payload.push(u8::from(focused));
+ stream
+ .write_all(&frame_message(&payload))
+ .map_err(|e| format!("write client shell focus: {e}"))?;
+ stream
+ .flush()
+ .map_err(|e| format!("flush client shell focus: {e}"))
+}
+
pub fn send_detach(stream: &mut UnixStream) -> Result<(), String> {
let detach_payload = encode_varint_u32(4);
let framed = frame_message(&detach_payload);