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) <noreply@anthropic.com>
This commit is contained in:
2026-07-21 18:45:56 -05:00
parent 3b041f20c1
commit e393b0d847

View File

@@ -1556,10 +1556,15 @@ void RenderSettingsPage(App* app) {
for (int i = 0; i < 6; i++) { for (int i = 0; i < 6; i++) {
if (timeoutValues[i] == timeout) { selTimeout = i; break; } 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()); ImGui::SameLine(0, Layout::spacingLg());
else } else {
if (includeRpcEncrypt) ImGui::Dummy(ImVec2(0, Layout::spacingXs()));
ImGui::SetCursorScreenPos(ImVec2(secX, ImGui::GetCursorScreenPos().y)); ImGui::SetCursorScreenPos(ImVec2(secX, ImGui::GetCursorScreenPos().y));
}
ImGui::AlignTextToFramePadding(); ImGui::AlignTextToFramePadding();
Type().textColored(TypeStyle::Caption, OnSurfaceMedium(), TR("settings_auto_lock")); Type().textColored(TypeStyle::Caption, OnSurfaceMedium(), TR("settings_auto_lock"));
ImGui::SameLine(0, Layout::spacingXs()); ImGui::SameLine(0, Layout::spacingXs());