fix(prune): honest reclaim/skip counts; cross-ref layout coupling

Already-absent files no longer inflate reclaimedCount (outAlreadyAbsent
distinguishes vanished-at-delete from real failures). Stale skip count
de-dups confirmed before subtraction so duplicates aren't tallied as
stale. prune_button.h rightInset and drawTailFooter vrc.right now
cross-reference each other by name.
This commit is contained in:
2026-07-26 18:59:30 -04:00
parent 7b53ba16f6
commit ef2d3fa846
4 changed files with 54 additions and 22 deletions
+7 -2
View File
@@ -59,7 +59,12 @@ struct ButtonRect {
// * buttonWidth — the button's fixed width.
// * rightInset — gap from the footer's right edge to the button's right edge (the
// button sits left of this inset, clearing the right-aligned version
// readout which uses its own inset).
// readout). COUPLED TO drawTailFooter (bank_panel.cpp): the version
// readout uses `vrc.right -= 8` (8 px right margin). The button's
// right edge lands at footer.right - 84, i.e. 76 px left of the
// readout's right margin — enough clearance for the ~10-char label.
// If the version readout's inset changes in drawTailFooter, update
// this value to maintain clearance.
// * verticalInset — top/bottom gap inside the footer (the button is shorter than the
// strip so it reads as a raised control, not a full-height fill).
// * minLeftInset — the button's left edge must stay at least this far from the footer
@@ -68,7 +73,7 @@ struct ButtonRect {
// rect (button suppressed — see header placement contract).
struct PruneButtonSpec {
int buttonWidth = 72;
int rightInset = 84;
int rightInset = 84; // COUPLED: version readout in drawTailFooter uses vrc.right -= 8
int verticalInset = 4;
int minLeftInset = 120;
};