feat(history): show "Loading older history (N%)" during the initial bulk load
History streams in over many refresh cycles (the incremental shielded scan walks every z-address), so the first batch appears long before the list is complete — with no indication more is still coming. The existing loading banner deliberately goes quiet once any rows are on screen. Track whether the first full shielded scan has finished (initial_history_scan_complete_) and, until it has, surface a progress percentage (fraction of z-addresses scanned) in transactionRefreshProgressText() — which the History tab already renders as its pulsing loading indicator. Goes quiet once the first scan completes; routine per-block re-scans don't re-trigger it. Reset on a full history invalidation (rescan / session reset) so it shows again on reload. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -575,6 +575,10 @@ private:
|
||||
static constexpr int MAX_VIEWTX_PER_CYCLE = 25; // cap z_viewtransaction calls per refresh
|
||||
std::size_t shielded_history_scan_cursor_ = 0;
|
||||
bool shielded_history_scan_pending_ = false;
|
||||
// False until the first full shielded-history scan finishes. Drives the History tab's
|
||||
// "Loading older history…" progress so the user knows transactions are still streaming in
|
||||
// after the first batch appears; goes quiet for the routine per-block re-scans afterward.
|
||||
bool initial_history_scan_complete_ = false;
|
||||
std::unordered_map<std::string, int> shielded_history_scan_heights_;
|
||||
|
||||
// P4b: z_viewtransaction result cache — avoids re-calling the RPC for
|
||||
|
||||
Reference in New Issue
Block a user