|
TB2026-YDS Firmware
|
A fixed-depth stack of screens; the top screen owns input and rendering. More...

Functions | |
| void | navigator_push (screen_t *screen) |
| Push a screen onto the stack and call its on_enter. | |
| void | navigator_pop (void) |
| Pop the top screen and call its on_exit. No-op if the stack is empty. | |
| void | navigator_tick (ui_event_t event) |
| Deliver one input event to the top screen, then render it. | |
| void | navigator_render (void) |
| Re-render the top screen and the status bar, without an input event. | |
| uint32_t | navigator_refresh_ticks (void) |
| How long the UI task should wait for input before a live re-render. | |
A fixed-depth stack of screens; the top screen owns input and rendering.
| void navigator_pop | ( | void | ) |
Pop the top screen and call its on_exit. No-op if the stack is empty.
| void navigator_push | ( | screen_t * | screen | ) |
Push a screen onto the stack and call its on_enter.
| screen | Screen to activate. Ignored if the stack is full. |
| uint32_t navigator_refresh_ticks | ( | void | ) |
How long the UI task should wait for input before a live re-render.
Returns the top screen's screen_t::refresh_ms as ticks, or portMAX_DELAY when it is 0 (event-driven) or the stack is empty — so a non-live screen blocks forever and costs no periodic wake-ups.
| void navigator_render | ( | void | ) |
Re-render the top screen and the status bar, without an input event.
Used by the UI loop to refresh a live screen on its timer tick. No-op if the stack is empty.
| void navigator_tick | ( | ui_event_t | event | ) |
Deliver one input event to the top screen, then render it.
| event | Input event to dispatch. No-op if the stack is empty. |