add MPRIS volume handler (#1415)

This commit is contained in:
jeffvli
2025-12-28 01:15:34 -08:00
parent df0d4b7032
commit 4eac6457ea
3 changed files with 13 additions and 0 deletions
+3
View File
@@ -657,6 +657,9 @@ if (mprisPlayer) {
}
currentState.volume = volume;
broadcast({ data: volume, event: 'volume' });
getMainWindow()?.webContents.send('request-volume', {
volume,
});
});
}
+5
View File
@@ -51,11 +51,16 @@ const requestToggleShuffle = (
ipcRenderer.on('mpris-request-toggle-shuffle', cb);
};
const requestVolume = (cb: (event: IpcRendererEvent, data: { volume: number }) => void) => {
ipcRenderer.on('request-volume', cb);
};
export const mpris = {
requestPosition,
requestSeek,
requestToggleRepeat,
requestToggleShuffle,
requestVolume,
updatePosition,
updateRepeat,
updateSeek,
@@ -43,11 +43,16 @@ export const useMPRIS = () => {
player.toggleShuffle();
});
mpris?.requestVolume((_e: unknown, data: { volume: number }) => {
player.setVolume(data.volume);
});
return () => {
ipc?.removeAllListeners('mpris-request-toggle-repeat');
ipc?.removeAllListeners('mpris-request-toggle-shuffle');
ipc?.removeAllListeners('request-position');
ipc?.removeAllListeners('request-seek');
ipc?.removeAllListeners('request-volume');
};
}, [player]);