feat(settings): SECURITY on one fill-width row + Advanced daemon actions shown by default
- SECURITY: the auto-lock + PIN controls now continue on the same row as the encrypt/change/lock/remove controls (full-node), so the whole security band fills the card width instead of leaving the right half blank. Lite (no encrypt row) still starts auto-lock/PIN on a fresh row at the left edge. - Daemon Binary "Advanced" (Install bundled / Rescan / Delete blockchain / Repair wallet) now defaults to expanded (node_advanced_expanded = true) so the actions are visible without a click; the toggle can still collapse them. Full-node + lite build clean; hygiene clean. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -144,7 +144,7 @@ struct SettingsPageState {
|
|||||||
std::set<std::string> debug_categories;
|
std::set<std::string> debug_categories;
|
||||||
bool debug_cats_dirty = false;
|
bool debug_cats_dirty = false;
|
||||||
bool debug_expanded = false;
|
bool debug_expanded = false;
|
||||||
bool node_advanced_expanded = false; // Node & Security: rare/destructive daemon actions
|
bool node_advanced_expanded = true; // Node & Security: rare/destructive daemon actions (shown by default)
|
||||||
bool effects_expanded = false;
|
bool effects_expanded = false;
|
||||||
bool tools_expanded = false;
|
bool tools_expanded = false;
|
||||||
bool confirm_clear_ztx = false;
|
bool confirm_clear_ztx = false;
|
||||||
@@ -1571,10 +1571,11 @@ void RenderSettingsPage(App* app) {
|
|||||||
app->showDecryptDialog();
|
app->showDecryptDialog();
|
||||||
if (ImGui::IsItemHovered()) material::Tooltip("%s", TR("tt_remove_encrypt"));
|
if (ImGui::IsItemHovered()) material::Tooltip("%s", TR("tt_remove_encrypt"));
|
||||||
}
|
}
|
||||||
ImGui::Dummy(ImVec2(0, Layout::spacingXs()));
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Auto-Lock timeout + PIN controls on one horizontal row.
|
// Auto-Lock timeout + PIN controls — continue on the same row as the encrypt
|
||||||
|
// controls (full-node) so the whole SECURITY band fills the width; on lite
|
||||||
|
// (no encrypt row) they start a fresh row at the section's left edge.
|
||||||
{
|
{
|
||||||
float comboW = S.drawElement("components.settings-page", "security-combo-width").sizeOr(120.0f);
|
float comboW = S.drawElement("components.settings-page", "security-combo-width").sizeOr(120.0f);
|
||||||
|
|
||||||
@@ -1585,7 +1586,10 @@ 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; }
|
||||||
}
|
}
|
||||||
ImGui::SetCursorScreenPos(ImVec2(secX, ImGui::GetCursorScreenPos().y));
|
if (includeRpcEncrypt)
|
||||||
|
ImGui::SameLine(0, Layout::spacingLg());
|
||||||
|
else
|
||||||
|
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());
|
||||||
|
|||||||
Reference in New Issue
Block a user