diff --git a/ui/src/album/AlbumGridView.js b/ui/src/album/AlbumGridView.js index 94cddf9c9..cf12b0e45 100644 --- a/ui/src/album/AlbumGridView.js +++ b/ui/src/album/AlbumGridView.js @@ -103,11 +103,14 @@ const Cover = withContentRect('bounds')( // Force height to be the same as the width determined by the GridList // noinspection JSSuspiciousNameCombination const classes = useCoverStyles({ height: contentRect.bounds.width }) - const [, dragAlbumRef] = useDrag(() => ({ - type: DraggableTypes.ALBUM, - item: { albumIds: [record.id] }, - options: { dropEffect: 'copy' }, - })) + const [, dragAlbumRef] = useDrag( + () => ({ + type: DraggableTypes.ALBUM, + item: { albumIds: [record.id] }, + options: { dropEffect: 'copy' }, + }), + [record] + ) return (
diff --git a/ui/src/album/AlbumTableView.js b/ui/src/album/AlbumTableView.js index 5d96340a7..a09a0bc69 100644 --- a/ui/src/album/AlbumTableView.js +++ b/ui/src/album/AlbumTableView.js @@ -51,11 +51,14 @@ const useStyles = makeStyles({ const AlbumDatagridRow = (props) => { const { record } = props - const [, dragAlbumRef] = useDrag(() => ({ - type: DraggableTypes.ALBUM, - item: { albumIds: [record.id] }, - options: { dropEffect: 'copy' }, - })) + const [, dragAlbumRef] = useDrag( + () => ({ + type: DraggableTypes.ALBUM, + item: { albumIds: [record.id] }, + options: { dropEffect: 'copy' }, + }), + [record] + ) return } diff --git a/ui/src/artist/ArtistList.js b/ui/src/artist/ArtistList.js index 82eeb8992..4722b7108 100644 --- a/ui/src/artist/ArtistList.js +++ b/ui/src/artist/ArtistList.js @@ -84,11 +84,14 @@ const ArtistFilter = (props) => { const ArtistDatagridRow = (props) => { const { record } = props - const [, dragArtistRef] = useDrag(() => ({ - type: DraggableTypes.ARTIST, - item: { artistIds: [record?.id] }, - options: { dropEffect: 'copy' }, - })) + const [, dragArtistRef] = useDrag( + () => ({ + type: DraggableTypes.ARTIST, + item: { artistIds: [record?.id] }, + options: { dropEffect: 'copy' }, + }), + [record] + ) return } diff --git a/ui/src/common/SongDatagrid.js b/ui/src/common/SongDatagrid.js index 2b09dac58..c3b9709bc 100644 --- a/ui/src/common/SongDatagrid.js +++ b/ui/src/common/SongDatagrid.js @@ -106,19 +106,25 @@ export const SongDatagridRow = ({ isValidElement(c) ) - const [, dragDiscRef] = useDrag(() => ({ - type: DraggableTypes.DISC, - item: { - discs: [{ albumId: record?.albumId, discNumber: record?.discNumber }], - }, - options: { dropEffect: 'copy' }, - })) + const [, dragDiscRef] = useDrag( + () => ({ + type: DraggableTypes.DISC, + item: { + discs: [{ albumId: record?.albumId, discNumber: record?.discNumber }], + }, + options: { dropEffect: 'copy' }, + }), + [record] + ) - const [, dragSongRef] = useDrag(() => ({ - type: DraggableTypes.SONG, - item: { ids: [record?.id] }, - options: { dropEffect: 'copy' }, - })) + const [, dragSongRef] = useDrag( + () => ({ + type: DraggableTypes.SONG, + item: { ids: [record?.mediaFileId || record?.id] }, + options: { dropEffect: 'copy' }, + }), + [record] + ) if (!record || !record.title) { return null