feat: blockchain rescan via daemon restart + status bar progress
- Fix z_importwallet to use full path instead of filename only - Add rescanBlockchain() method that restarts daemon with -rescan flag - Track rescan progress via daemon output parsing and getrescaninfo RPC - Display rescan progress in status bar with animated indicator when starting - Improve dark theme card contrast: lighter surface-variant, tinted borders, stronger rim-light
This commit is contained in:
@@ -347,12 +347,8 @@ void ConsoleTab::render(daemon::EmbeddedDaemon* daemon, rpc::RPCClient* rpc, rpc
|
||||
void ConsoleTab::renderCommandsPopupModal()
|
||||
{
|
||||
if (!show_commands_popup_) {
|
||||
renderCommandsPopup();
|
||||
return;
|
||||
}
|
||||
// Called at top-level window scope so the modal blocks all input.
|
||||
ImGui::OpenPopup("RPC Command Reference");
|
||||
show_commands_popup_ = false;
|
||||
renderCommandsPopup();
|
||||
}
|
||||
|
||||
@@ -1287,18 +1283,8 @@ void ConsoleTab::renderCommandsPopup()
|
||||
{
|
||||
using namespace material;
|
||||
|
||||
// Center the modal
|
||||
ImVec2 center = ImGui::GetMainViewport()->GetCenter();
|
||||
ImGui::SetNextWindowPos(center, ImGuiCond_Appearing, ImVec2(0.5f, 0.5f));
|
||||
float popW = std::min(schema::UI().drawElement("tabs.console", "popup-max-width").size, ImGui::GetMainViewport()->Size.x * schema::UI().drawElement("tabs.console", "popup-width-ratio").size);
|
||||
float popH = std::min(schema::UI().drawElement("tabs.console", "popup-max-height").size, ImGui::GetMainViewport()->Size.y * schema::UI().drawElement("tabs.console", "popup-height-ratio").size);
|
||||
ImGui::SetNextWindowSize(ImVec2(popW, popH), ImGuiCond_Appearing);
|
||||
|
||||
const auto& acrylicTheme = GetCurrentAcrylicTheme();
|
||||
ImGui::PushStyleVar(ImGuiStyleVar_WindowPadding, ImVec2(Layout::spacingXl(), Layout::spacingLg()));
|
||||
if (!effects::ImGuiAcrylic::BeginAcrylicPopupModal("RPC Command Reference", nullptr,
|
||||
ImGuiWindowFlags_NoTitleBar, acrylicTheme.popup)) {
|
||||
ImGui::PopStyleVar();
|
||||
if (!material::BeginOverlayDialog("RPC Command Reference", &show_commands_popup_, popW, 0.94f)) {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -1591,11 +1577,10 @@ void ConsoleTab::renderCommandsPopup()
|
||||
// Close button
|
||||
if (ImGui::Button("Close", ImVec2(-1, 0))) {
|
||||
cmdFilter[0] = '\0';
|
||||
ImGui::CloseCurrentPopup();
|
||||
show_commands_popup_ = false;
|
||||
}
|
||||
|
||||
effects::ImGuiAcrylic::EndAcrylicPopup();
|
||||
ImGui::PopStyleVar();
|
||||
material::EndOverlayDialog();
|
||||
}
|
||||
|
||||
void ConsoleTab::executeCommand(const std::string& cmd, rpc::RPCClient* rpc, rpc::RPCWorker* worker)
|
||||
|
||||
Reference in New Issue
Block a user