diff --git a/src/ui-touch/UITask.cpp b/src/ui-touch/UITask.cpp index 6159a7a..d627fb9 100644 --- a/src/ui-touch/UITask.cpp +++ b/src/ui-touch/UITask.cpp @@ -21294,11 +21294,15 @@ static void updateGlobalStatusBar() { // left of the battery rightward to keep it snug against the bolt — else a // %-wide gap opens between the signal bars and the lightning glyph. const int d = charging ? 32 : 0; + // Base offsets MUST match the builder (which shifted for the SD LED): the + // SD dot is at -91, ble -111, clock -126, layout -166. The dot slides with + // the cluster too so it stays between Wi-Fi and Bluetooth while charging. if (g_statusbar.sig_box) lv_obj_align(g_statusbar.sig_box, LV_ALIGN_RIGHT_MID, -54 + d, 0); if (g_statusbar.conn_icon) lv_obj_align(g_statusbar.conn_icon, LV_ALIGN_RIGHT_MID, -73 + d, 0); - if (g_statusbar.ble_icon) lv_obj_align(g_statusbar.ble_icon, LV_ALIGN_RIGHT_MID, -95 + d, 0); - if (g_statusbar.clock) lv_obj_align(g_statusbar.clock, LV_ALIGN_RIGHT_MID, -110 + d, 0); - if (g_statusbar.layout_label) lv_obj_align(g_statusbar.layout_label, LV_ALIGN_RIGHT_MID, -150 + d, 0); + if (g_statusbar.sd_icon) lv_obj_align(g_statusbar.sd_icon, LV_ALIGN_RIGHT_MID, -91 + d, 0); + if (g_statusbar.ble_icon) lv_obj_align(g_statusbar.ble_icon, LV_ALIGN_RIGHT_MID, -111 + d, 0); + if (g_statusbar.clock) lv_obj_align(g_statusbar.clock, LV_ALIGN_RIGHT_MID, -126 + d, 0); + if (g_statusbar.layout_label) lv_obj_align(g_statusbar.layout_label, LV_ALIGN_RIGHT_MID, -166 + d, 0); } s_last_pct = pct; s_last_charging = charging;