zellij-org/zellij · error

MouseEvent missing position

Error message

MouseEvent missing position

What it means

Error "MouseEvent missing position" thrown in zellij-org/zellij.

Source

Thrown at zellij-utils/src/ipc/protobuf_conversion.rs:4610

    ) -> Result<Self> {
        use crate::client_server_contract::client_server_contract::MouseEventType as ProtoMouseEventType;

        let event_type = match event.event_type {
            x if x == ProtoMouseEventType::Press as i32 => {
                crate::input::mouse::MouseEventType::Press
            },
            x if x == ProtoMouseEventType::Release as i32 => {
                crate::input::mouse::MouseEventType::Release
            },
            x if x == ProtoMouseEventType::Motion as i32 => {
                crate::input::mouse::MouseEventType::Motion
            },
            _ => return Err(anyhow!("Invalid MouseEventType: {}", event.event_type)),
        };

        let position = event
            .position
            .ok_or_else(|| anyhow!("MouseEvent missing position"))?
            .try_into()?;

        Ok(crate::input::mouse::MouseEvent {
            event_type,
            left: event.left,
            right: event.right,
            middle: event.middle,
            wheel_up: event.wheel_up,
            wheel_down: event.wheel_down,
            wheel_left: event.wheel_left,
            wheel_right: event.wheel_right,
            shift: event.shift,
            alt: event.alt,
            ctrl: event.ctrl,
            position,
        })
    }
}

View on GitHub (pinned to e839bfffa5)

Solutions

  1. Include the required 'position' field in the protobuf message before sending it.
  2. Verify the sender populates all mandatory fields; add a presence check before conversion.

When it happens

Trigger: Occurs when a protobuf message received over IPC omits the required field; deserialization fails instead of using a default.

Common situations: Occurs when a client or plugin sends an incompletely populated message, often from a version mismatch or hand-crafted payload.


AI-assisted analysis of zellij-org/zellij@e839bfffa5 (2026-08-19). Data as JSON: /api/errors/a919115f4fce6ed9. Report an issue: GitHub.