[READ-ONLY] Mirror of https://github.com/probablykasper/ferrum. Music library app for Mac, Linux and Windows ferrum.kasper.space
electron linux macos music music-library music-player napi windows
0

Configure Feed

Select the types of activity you want to include in your feed.

Fix tracklist refreshing

Kasper (Sep 26, 2024, 3:20 AM +0200) 1a745ad4 af3a1045

+11 -10
+3 -2
src/components/TrackList.svelte
··· 22 22 track_lists_details_map, 23 23 move_tracks, 24 24 remove_from_playlist, 25 - playlist_items_updated, 25 + tracklist_items_updated, 26 26 get_default_sort_desc, 27 + delete_tracks_with_item_ids, 27 28 } from '../lib/data' 28 29 import { new_playback_instance, playing_id } from '../lib/player' 29 30 import { ··· 67 68 groupAlbumTracks: $group_album_tracks, 68 69 }) 69 70 } 70 - $: if (playlist_items_updated || true) { 71 + $: if ($tracklist_items_updated || true) { 71 72 tracks_page = methods.get_tracks_page({ 72 73 playlistId: params.playlist_id, 73 74 filterQuery: $filter,
+8 -8
src/lib/data.ts
··· 11 11 ViewAs, 12 12 ViewOptions, 13 13 } from '../../ferrum-addon' 14 + import { queue } from './queue' 14 15 15 16 export const is_dev = window.is_dev 16 17 export const local_data_path = window.local_data_path ··· 111 112 } 112 113 if (track_ids.length >= 1) { 113 114 call((addon) => addon.add_tracks_to_playlist(playlist_id, track_ids)) 114 - playlist_items_updated.emit() 115 + tracklist_items_updated.emit() 115 116 methods.save() 116 117 } 117 118 } ··· 122 123 // methods.save() 123 124 } 124 125 export function delete_tracks_with_item_ids(item_ids: ItemId[]) { 125 - // call((addon) => addon.delete_tracks_with_item_ids(item_ids)) 126 - // page.refresh_ids_and_keep_selection() 127 - // pageSelection.clear() 128 - // queue.removeDeleted() 129 - // methods.save() 126 + call((addon) => addon.delete_tracks_with_item_ids(item_ids)) 127 + tracklist_items_updated.emit() 128 + queue.removeDeleted() 129 + methods.save() 130 130 } 131 131 export type PlaylistInfo = { 132 132 name: string ··· 293 293 } 294 294 } 295 295 export const tracks_updated = create_refresh_store() 296 - export const playlist_items_updated = create_refresh_store() 296 + export const tracklist_items_updated = create_refresh_store() 297 297 298 298 export function get_artists() { 299 299 return call((addon) => addon.get_artists()) 300 300 } 301 301 export function move_tracks(playlist_id: TrackListID, indexes: ItemId[], to_index: number) { 302 302 call((data) => data.move_tracks(playlist_id, indexes, to_index)) 303 - playlist_items_updated.emit() 303 + tracklist_items_updated.emit() 304 304 methods.save() 305 305 }