[Feature]: More Options for Duplicate File Deletion #92

Closed
opened 2026-06-14 22:22:11 +00:00 by ValleyGeek · 2 comments
Owner

Problem or use case

Auto select files to keep from file duplicate groups in bulk

Proposed solution

Add a button to the bottom of the duplicate toolbox container called File Duplicate Bulk Actions which opens a dialog.

  1. Text: Choose the group of duplicates to delete
  2. A radio button list
    1. Newest Files (selected by default)
    2. Oldest Files
    3. Shortest File Name
    4. Longest File Name
    5. Shortest Path
    6. Longest Path
  3. Buttons: Cancel, Delete

Alternatives considered

No response

### Problem or use case Auto select files to keep from file duplicate groups in bulk ### Proposed solution Add a button to the bottom of the duplicate toolbox container called `File Duplicate Bulk Actions` which opens a dialog. 1. Text: Choose the group of duplicates to delete 2. A radio button list 1. Newest Files (selected by default) 2. Oldest Files 3. Shortest File Name 4. Longest File Name 3. Shortest Path 4. Longest Path 3. Buttons: Cancel, Delete ### Alternatives considered _No response_
Member

Implemented on branch 0.1.34/issue-92-bulk-dupe-delete (pushed, no PR yet):

  • core/dupe_detector.py: pick_keep_path_by_strategy / bulk_keep_delete_paths implementing the six keep rules (Newest Files default, Oldest Files, Shortest/Longest File Name, Shortest/Longest Path), plus unit tests.
  • New "File Duplicate Bulk Actions" button at the bottom of the Duplicates toolbox (DupeContainer) opens a dialog (BulkDupeActionsDialog) with the radio list from the proposal and Cancel/Delete buttons.
  • Delete applies the chosen strategy across every F-DUPE_# group at once, staging losers with the existing non-destructive DELETE tag (same mechanism as Keep Best) — fully undoable via the existing QUndoStack.

Full test suite (355 tests) and ruff pass. Will request a PR to main when asked.

Implemented on branch `0.1.34/issue-92-bulk-dupe-delete` (pushed, no PR yet): - `core/dupe_detector.py`: `pick_keep_path_by_strategy` / `bulk_keep_delete_paths` implementing the six keep rules (Newest Files default, Oldest Files, Shortest/Longest File Name, Shortest/Longest Path), plus unit tests. - New "File Duplicate Bulk Actions" button at the bottom of the Duplicates toolbox (`DupeContainer`) opens a dialog (`BulkDupeActionsDialog`) with the radio list from the proposal and Cancel/Delete buttons. - Delete applies the chosen strategy across every `F-DUPE_#` group at once, staging losers with the existing non-destructive `DELETE` tag (same mechanism as Keep Best) — fully undoable via the existing `QUndoStack`. Full test suite (355 tests) and ruff pass. Will request a PR to `main` when asked.
Member

Resolved via #102 (0.1.34/issue-92-bulk-dupe-deletemain): adds the File Duplicate Bulk Actions button to the Duplicates toolbox with the six keep rules from the proposal (Newest Files default, Oldest Files, Shortest/Longest File Name, Shortest/Longest Path). Closing.

Resolved via #102 (`0.1.34/issue-92-bulk-dupe-delete` → `main`): adds the **File Duplicate Bulk Actions** button to the Duplicates toolbox with the six keep rules from the proposal (Newest Files default, Oldest Files, Shortest/Longest File Name, Shortest/Longest Path). Closing.
Sign in to join this conversation.
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
ai-collab/bulk-image-organizer#92
No description provided.