Files
P4-USB-transfer/main/ui/ui_nav.h
T
zhengxinandCursor 851e347cf5 初始提交卡包 USB 工程
纳入固件源码、屏幕组件、nand_xfer 工具和文档。忽略本机构建产物、sdkconfig,以及含本机路径的依赖锁。

Co-authored-by: Cursor <[email protected]>
2026-10-13 21:54:50 +08:00

52 lines
1.9 KiB
C

#ifndef UI_NAV_H
#define UI_NAV_H
#include <stdint.h>
#include "gui_guider.h"
#include "lvgl.h"
#ifdef __cplusplus
extern "C" {
#endif
/** Do not update current_page_idx / is_ui_mode / lottie / idle after Guider transition (e.g. set/sleep overlays). */
#define UI_NAV_PAGE_IDX_KEEP ((int16_t)-1)
/** Carousel / primary pages: same indices as ui.h (UI_IDX_*). */
void ui_nav_go_by_index(int new_idx, lv_screen_load_anim_t anim_type);
/**
* Wraps ui_load_scr_animation; then if page_idx_after is 0..5, applies the same chrome as ui_nav_go_by_index
* (current_page_idx, is_ui_mode, Lottie pause/resume, idle_timer) without loading again.
* Use UI_NAV_PAGE_IDX_KEEP when the target is not a primary carousel screen (set/sleep, etc.).
*/
void ui_nav_load_scr_animation(lv_ui *ui, lv_obj_t **new_scr, bool new_scr_del, bool *old_scr_del,
ui_setup_scr_t setup_scr, lv_screen_load_anim_t anim_type,
uint32_t time, uint32_t delay, bool is_clean, bool auto_del,
int16_t page_idx_after);
/** Wake-from-sleep path: restore Lottie home (replaces inline block in toggle_sleep_mode). */
void ui_nav_apply_wake_to_lottie_home(void);
/** Calendar screen: back to component (same anim / auto_del as widgets_init.c). */
void ui_nav_calendar_back_to_component(void);
/** custom.c: same as prior lv_screen_load_anim(sortition_text, FADE_ON, 300, 0, false). */
void ui_nav_load_sortition_text_fade(void);
/** events_init fortune: same as prior lv_screen_load_anim(fortune_text, ...). */
void ui_nav_load_fortune_text_fade(void);
/** Forward play-sticker / emoji command to change_task (FreeRTOS notify). */
void ui_nav_request_emoji_event(uint32_t emoji_event_bits);
/** On gesture page switch, safely interrupt mindfulness playback and return to default emoji. */
void ui_nav_interrupt_mindfulness_for_gesture(void);
#ifdef __cplusplus
}
#endif
#endif /* UI_NAV_H */