From e393b0d84798f123398f12df32077b1ea4afb0e5 Mon Sep 17 00:00:00 2001 From: DanS Date: Tue, 21 Jul 2026 18:45:56 -0500 Subject: [PATCH] fix(settings): wrap the SECURITY row in the narrow two-column card The encrypt controls + auto-lock combo + PIN hint are one SameLine chain that fits at full width but overflowed the half-width NODE & SECURITY column, spilling the "Encrypt wallet first to enable PIN" hint over the Daemon column's buttons. When the section is narrow, break the auto-lock/PIN group onto its own row at the section's left edge instead of continuing the line. Co-Authored-By: Claude Opus 4.8 (1M context) --- src/ui/pages/settings_page.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/ui/pages/settings_page.cpp b/src/ui/pages/settings_page.cpp index de6aa89..1a163f0 100644 --- a/src/ui/pages/settings_page.cpp +++ b/src/ui/pages/settings_page.cpp @@ -1556,10 +1556,15 @@ void RenderSettingsPage(App* app) { for (int i = 0; i < 6; i++) { if (timeoutValues[i] == timeout) { selTimeout = i; break; } } - if (includeRpcEncrypt) + // In a narrow (two-column) card the encrypt controls + auto-lock + PIN don't fit on + // one row, so wrap the auto-lock/PIN group onto its own row at the section's left edge. + const bool secWrap = includeRpcEncrypt && secColW < 740.0f * Layout::dpiScale(); + if (includeRpcEncrypt && !secWrap) { ImGui::SameLine(0, Layout::spacingLg()); - else + } else { + if (includeRpcEncrypt) ImGui::Dummy(ImVec2(0, Layout::spacingXs())); ImGui::SetCursorScreenPos(ImVec2(secX, ImGui::GetCursorScreenPos().y)); + } ImGui::AlignTextToFramePadding(); Type().textColored(TypeStyle::Caption, OnSurfaceMedium(), TR("settings_auto_lock")); ImGui::SameLine(0, Layout::spacingXs());