Raxol.Terminal.ANSI.MouseTracking (Raxol v0.5.0)
View SourceHandles mouse tracking and focus tracking for the terminal. Supports various mouse tracking modes and focus tracking events.
Summary
Functions
Disables mouse tracking with the specified mode.
Enables mouse tracking with the specified mode.
Formats a focus event into a tracking sequence.
Formats a mouse event into a tracking sequence.
Parses a focus tracking sequence into a focus event.
Parses a mouse tracking sequence into a mouse event.
Types
@type focus_event() :: :focus_in | :focus_out
@type mouse_action() :: :press | :release | :move | :drag
@type mouse_button() :: :left | :middle | :right | :wheel_up | :wheel_down
@type mouse_event() :: {mouse_button(), mouse_action(), integer(), integer()}
Functions
Disables mouse tracking with the specified mode.
Enables mouse tracking with the specified mode.
@spec format_focus_event(focus_event()) :: String.t()
Formats a focus event into a tracking sequence.
@spec format_mouse_event(mouse_event()) :: String.t()
Formats a mouse event into a tracking sequence.
@spec parse_focus_sequence(String.t()) :: focus_event() | nil
Parses a focus tracking sequence into a focus event.
@spec parse_mouse_sequence(String.t()) :: mouse_event() | nil
Parses a mouse tracking sequence into a mouse event.