albums: fixed keeping an album pinned after renaming

This commit is contained in:
Thibault Deckers 2020-09-23 10:22:01 +09:00
parent a411a8b578
commit 16a8665c96

View file

@ -23,12 +23,10 @@ class ChipActionDelegate {
switch (action) { switch (action) {
case ChipAction.pin: case ChipAction.pin:
final pinnedFilters = settings.pinnedFilters..add(filter); settings.pinnedFilters = settings.pinnedFilters..add(filter);
settings.pinnedFilters = pinnedFilters;
break; break;
case ChipAction.unpin: case ChipAction.unpin:
final pinnedFilters = settings.pinnedFilters..remove(filter); settings.pinnedFilters = settings.pinnedFilters..remove(filter);
settings.pinnedFilters = pinnedFilters;
break; break;
default: default:
break; break;
@ -78,12 +76,17 @@ class AlbumChipActionDelegate extends ChipActionDelegate with FeedbackMixin, Per
await source.moveEntry(entry, newFields); await source.moveEntry(entry, newFields);
} }
}); });
final newAlbum = path.join(path.dirname(album), newName);
source.updateAfterMove( source.updateAfterMove(
entries: movedEntries, entries: movedEntries,
fromAlbums: {album}, fromAlbums: {album},
toAlbum: path.join(path.dirname(album), newName), toAlbum: newAlbum,
copy: false, copy: false,
); );
final newFilter = AlbumFilter(newAlbum, source.getUniqueAlbumName(newAlbum));
settings.pinnedFilters = settings.pinnedFilters
..remove(filter)
..add(newFilter);
final failed = bySuccess[false]?.length ?? 0; final failed = bySuccess[false]?.length ?? 0;
if (failed > 0) { if (failed > 0) {