Compact tracker actions and share X-to-close dialog shortcuts

This commit is contained in:
liu weikai committed 2026-10-15 17:41:37 +08:00
1 parent c1683dfae0
commit 84a3ecf68c
10 files changed
+128 -92

No files matched your search

@@ -25,4 +25,8 @@ struct Frame
// The page owns the returned widgets and focus group. No retained controller or
// business data: the fixed title bar and scrolling body are just shared chrome.
Frame create(lv_obj_t* parent, const Config& config);
// Call after populating the body for a compact, content-sized action dialog.
void fit_content_height(const Frame& frame);
// Register X/x on this dialog's controls after the page builds its focus group.
void bind_close_shortcuts(const Frame& frame, lv_group_t* group);
} // namespace ui::components::dialog_frame
@@ -60,10 +60,5 @@ void top_bar_set_right_text_ascii(TopBar& bar, const char* text);
*/
void top_bar_set_back_callback(TopBar& bar, void (*cb)(void*), void* user_data);
// Same title-bar metrics and theme as a page, with a compact right-side close.
lv_obj_t* top_bar_create_dialog_header(lv_obj_t* parent, const char* title,
lv_event_cb_t on_close, void* context = nullptr,
lv_obj_t** close_button = nullptr);
} // namespace widgets
} // namespace ui