From b695d7cbc0d29540993642c23b3d5798cbf9f7dc Mon Sep 17 00:00:00 2001 From: Ogulcan Celik Date: Wed, 3 Jun 2026 02:03:14 +0300 Subject: fix: forward any-motion pane mouse events refs #419 --- src/ghostty/mod.rs | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'src/ghostty') diff --git a/src/ghostty/mod.rs b/src/ghostty/mod.rs index 0576f340..20161d80 100644 --- a/src/ghostty/mod.rs +++ b/src/ghostty/mod.rs @@ -150,12 +150,15 @@ pub const MOUSE_BUTTON_WHEEL_LEFT: ffi::GhosttyMouseButton = ffi::GhosttyMouseButton_GHOSTTY_MOUSE_BUTTON_SIX; pub const MOUSE_BUTTON_WHEEL_RIGHT: ffi::GhosttyMouseButton = ffi::GhosttyMouseButton_GHOSTTY_MOUSE_BUTTON_SEVEN; +pub const MOUSE_FORMAT_SGR: ffi::GhosttyMouseFormat = + ffi::GhosttyMouseFormat_GHOSTTY_MOUSE_FORMAT_SGR; pub const MODE_APPLICATION_CURSOR_KEYS: u16 = 1; pub const MODE_FOCUS_EVENT: u16 = 1004; pub const MODE_MOUSE_UTF8: u16 = 1005; pub const MODE_MOUSE_SGR: u16 = 1006; pub const MODE_MOUSE_ALTERNATE_SCROLL: u16 = 1007; +pub const MODE_MOUSE_SGR_PIXELS: u16 = 1016; pub const MODE_BRACKETED_PASTE: u16 = 2004; pub const MODE_SYNCHRONIZED_OUTPUT: u16 = 2026; @@ -2114,6 +2117,16 @@ impl MouseEncoder { } } + pub fn set_format(&mut self, format: ffi::GhosttyMouseFormat) { + unsafe { + ffi::ghostty_mouse_encoder_setopt( + self.raw, + ffi::GhosttyMouseEncoderOption_GHOSTTY_MOUSE_ENCODER_OPT_FORMAT, + (&format as *const ffi::GhosttyMouseFormat).cast(), + ) + } + } + pub fn encode(&mut self, event: &MouseEvent) -> Result, Error> { encode_with_retry(|buf, len, out_len| unsafe { ffi::ghostty_mouse_encoder_encode(self.raw, event.raw, buf, len, out_len) -- cgit v1.2.3