module

Obsctl::TUI::HitTest

Resolves screen coordinates to the panel and row underneath them.

The dashboard is drawn from a pure layout function and lists whose scroll offset is derived, not stored, so the same inputs that produced a frame can be replayed to ask what is at a point. Nothing about the last render has to be cached.

Instance methods

palette_area(model : Model, area : CryTUI::Rect) : CryTUI::Rect

The panel the command palette is drawn in, so a click outside it can be told from a click on it.

Source
palette_completion(model : Model, area : CryTUI::Rect, column : Int32, row : Int32) : Int32 | Nil

The completion chip under the pointer, or nil anywhere else.

Source
resolve(model : Model, area : CryTUI::Rect, column : Int32, row : Int32) : PointerTarget | Nil
Source
settings_index(model : Model, area : CryTUI::Rect, column : Int32, row : Int32) : Int32 | Nil

The theme row under the pointer in the appearance lab.

Source
which_key_area(model : Model, area : CryTUI::Rect) : CryTUI::Rect

Where the which-key menu is drawn for the sequence being typed.

Source
which_key_entry(model : Model, area : CryTUI::Rect, column : Int32, row : Int32) : Keymap::Entry | Nil

The which-key row under the pointer, so the menu can be clicked as well as typed.

Source