Add conflict policy options: Skip / Auto-number / Override
New ConflictPolicy enum in rename/ (Skip = original/default behavior,
AutoNumber = save as "Name (1).ext" counting up to the first free slot,
Override = replace the conflicting file outright), threaded through
execute_renames/rename_one alongside RenameAction. Override never deletes
a conflicting directory (falls back to Skip for that case); AutoNumber
sidesteps directories the same way by just trying the next number.
execute_rename now takes a conflict argument; undo/history are
deliberately NOT conflict-aware and always use their own fixed
skip-on-conflict policy regardless of what the original rename used.
Frontend: a second segmented selector in the rename confirmation modal
("On conflict: Skip / Auto-number / Override"), with Override styled in
red and its warning copy calling out that it can't be undone.
This commit is contained in:
@@ -497,6 +497,19 @@
|
||||
pointer-events: none;
|
||||
}
|
||||
|
||||
.action-segmented-option-danger.selected {
|
||||
background: #ff8a8a;
|
||||
color: var(--dock-deep);
|
||||
}
|
||||
|
||||
.action-segmented-option-danger:not(.selected):hover {
|
||||
color: #ff8a8a;
|
||||
}
|
||||
|
||||
.modal-note-danger {
|
||||
color: #ff8a8a;
|
||||
}
|
||||
|
||||
.modal-field-label {
|
||||
display: block;
|
||||
font-size: 11px;
|
||||
|
||||
Reference in New Issue
Block a user