From e13d92abc08c1f1ed86e3d6d05423a72059b71ed Mon Sep 17 00:00:00 2001 From: Tw93 Date: Sun, 21 Dec 2025 22:10:56 +0800 Subject: [PATCH] fix(analyze): clear multi-select on refresh and optimize delete - Clear multi-selection map on refresh to prevent index mismatch - Use built-in min function in delete.go - Improve delete cancellation logic --- cmd/analyze/delete.go | 7 ------- cmd/analyze/main.go | 4 ++++ 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/cmd/analyze/delete.go b/cmd/analyze/delete.go index b8adc91..8d68d50 100644 --- a/cmd/analyze/delete.go +++ b/cmd/analyze/delete.go @@ -63,13 +63,6 @@ func (e *multiDeleteError) Error() string { return strings.Join(e.errors[:min(3, len(e.errors))], "; ") } -func min(a, b int) int { - if a < b { - return a - } - return b -} - func deletePathWithProgress(root string, counter *int64) (int64, error) { var count int64 var firstErr error diff --git a/cmd/analyze/main.go b/cmd/analyze/main.go index 56e05f7..840a379 100644 --- a/cmd/analyze/main.go +++ b/cmd/analyze/main.go @@ -681,6 +681,10 @@ func (m model) updateKey(msg tea.KeyMsg) (tea.Model, tea.Cmd) { m.scanning = false return m, nil case "r": + // Clear multi-selection on refresh + m.multiSelected = make(map[int]bool) + m.largeMultiSelected = make(map[int]bool) + if m.inOverviewMode() { // In overview mode, clear cache and re-scan known entries m.overviewSizeCache = make(map[string]int64)