feat(ui): migrate Explorer detail/loading + daemon-update prompt to reference design
Presentation-only reference-design migration: - Explorer loading modal -> struct-form overlay (idSuffix explorerloading); block- detail modal loses its header divider; the search button + the prev/next nav become TactileButton; TR() the hardcoded "Previous block"/"Next block" tooltips, "TxID:", and the "shielded" output fallback (3 new explorer_* keys + reuse the existing `shielded` key), all 8 langs. Block-fetch RPC path untouched. - Daemon-update startup prompt -> struct-form overlay (idSuffix daemonupdprompt), 2 StyledButton -> TactileButton, drop the footer divider. The reinstall/ prompted-size persistence logic is unchanged. Build + ctest + hygiene clean; "DRGX" ticker left hardcoded per convention. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
11
src/app.cpp
11
src/app.cpp
@@ -3368,7 +3368,11 @@ void App::maybeOfferDaemonUpdate()
|
||||
|
||||
void App::renderDaemonUpdatePrompt()
|
||||
{
|
||||
if (!ui::material::BeginOverlayDialog(TR("daemon_update_title"), &show_daemon_update_prompt_, 520.0f, 0.94f))
|
||||
ui::material::OverlayDialogSpec ov;
|
||||
ov.title = TR("daemon_update_title"); ov.p_open = &show_daemon_update_prompt_;
|
||||
ov.style = ui::material::OverlayStyle::BlurFloat;
|
||||
ov.cardWidth = 520.0f; ov.idSuffix = "daemonupdprompt";
|
||||
if (!ui::material::BeginOverlayDialog(ov))
|
||||
return;
|
||||
const float dp = ui::Layout::dpiScale();
|
||||
ImGui::TextWrapped("%s", TR("daemon_update_body"));
|
||||
@@ -3377,13 +3381,12 @@ void App::renderDaemonUpdatePrompt()
|
||||
ImGui::TextWrapped("%s", TR("daemon_update_safe"));
|
||||
ImGui::PopStyleColor();
|
||||
ImGui::Spacing();
|
||||
ImGui::Separator();
|
||||
if (ui::material::StyledButton(TR("daemon_update_now"), ImVec2(170 * dp, 0))) {
|
||||
if (ui::material::TactileButton(TR("daemon_update_now"), ImVec2(170 * dp, 0))) {
|
||||
show_daemon_update_prompt_ = false;
|
||||
reinstallBundledDaemon(); // stops the node (managed or external), overwrites, restarts
|
||||
}
|
||||
ImGui::SameLine();
|
||||
if (ui::material::StyledButton(TR("daemon_update_keep"), ImVec2(150 * dp, 0))) {
|
||||
if (ui::material::TactileButton(TR("daemon_update_keep"), ImVec2(150 * dp, 0))) {
|
||||
show_daemon_update_prompt_ = false;
|
||||
}
|
||||
ui::material::EndOverlayDialog();
|
||||
|
||||
Reference in New Issue
Block a user