mirror of
https://github.com/MarekZegare4/MeshCore-Solo.git
synced 2026-11-02 19:02:00 +00:00
feat(ui-lvgl): title bar with the clock, tidier controls, contextual nav bar
Density from less chrome instead of smaller rows (ROW_H stays 44): - titled screens drop the status bar; the title bar (APPBAR_H) holds back, the title, the screen's actions and the time/battery on a pill; the status bar returns for Home, the map, typing, the quick panel and the lock - one radius (RADIUS) for everything tapped: buttons, tabs, choices, chips - tabs are all segmented at TAB_H in the body (GPS, Clock converted) - Nodes: chips row + sort + status line become one toolbar row with Show / Order choices; Messages' All/Favourites is the same choice - nav map: the target bar only while there is a target; the pin opens one "Places" popup; back from a map options page restores the map and Map tools as left, without a jump - node detail actions at the top of the scroll; Home tiles fill the page - rowsFit() leaves growing labels to the flex (a screen title cut to one letter after Messages' filter changed) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -257,10 +257,9 @@ void UITask::buildGps() {
|
||||
s_cn0 = s_best = s_nmea = s_rx = s_d_fix = s_d_ttff = s_d_search = s_d_utc = nullptr;
|
||||
for (lv_obj_t*& p : s_sys_pill) p = nullptr;
|
||||
lv_obj_set_style_pad_row(body, 6, 0);
|
||||
if (_header) {
|
||||
{ // the tabs first under the title bar, as on every screen with tabs
|
||||
static const char* TABS[] = { "Sky", "Signal", "Details", "" };
|
||||
lv_obj_t* tabs = segmented(_header, TABS, s_tab, 186, 28, theme::SURFACE);
|
||||
lv_obj_align(tabs, LV_ALIGN_RIGHT_MID, -4, 0);
|
||||
lv_obj_t* tabs = segmented(body, TABS, s_tab, LV_PCT(100), theme::TAB_H, theme::SURFACE);
|
||||
lv_obj_add_event_cb(tabs, onGpsTab, LV_EVENT_VALUE_CHANGED, NULL);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user