diff --git a/src/main/base/browserwindow.ts b/src/main/base/browserwindow.ts index c233fe5f..da39d7eb 100644 --- a/src/main/base/browserwindow.ts +++ b/src/main/base/browserwindow.ts @@ -1192,6 +1192,10 @@ export class BrowserWindow { LocalFiles.cleanUpDB() }) + LocalFiles.eventEmitter.on('newtracks', (data) => { + BrowserWindow.win.webContents.send('getUpdatedLocalList', data); + }); + ipcMain.on('writeWAV', (event, leftpcm, rightpcm, bufferlength) => { function interleave16(leftChannel: any, rightChannel: any) { diff --git a/src/main/providers/local/index.ts b/src/main/providers/local/index.ts index 332e30bc..34937f40 100644 --- a/src/main/providers/local/index.ts +++ b/src/main/providers/local/index.ts @@ -5,11 +5,15 @@ import { utils } from '../../base/utils'; import * as mm from 'music-metadata'; import {Md5} from 'ts-md5/dist/md5'; import e from "express"; +import { EventEmitter } from 'events'; + + export class LocalFiles { static localSongs: any = []; static localSongsArts: any = []; public static DB = ProviderDB.db; + static eventEmitter = new EventEmitter(); static getDataType(item_id : String | any){ if ((item_id ?? ('')).startsWith('ciderlocalart')) @@ -105,8 +109,10 @@ export class LocalFiles { ProviderDB.db.putIfNotExists(form) ProviderDB.db.putIfNotExists(art) metadatalist.push(form) - } - //delete removed tracks + + if (this.localSongs.length === 0 && numid % 10 === 0) { // send updated chunks only if there is no previous database + this.eventEmitter.emit('newtracks', metadatalist)} + } } catch (e) { } } this.localSongs = metadatalist; diff --git a/src/renderer/views/components/fullscreen.ejs b/src/renderer/views/components/fullscreen.ejs index 812e7ded..151090f6 100644 --- a/src/renderer/views/components/fullscreen.ejs +++ b/src/renderer/views/components/fullscreen.ejs @@ -139,7 +139,6 @@ -