mirror of
https://github.com/jeffvli/feishin.git
synced 2026-07-05 18:19:56 +02:00
31 lines
833 B
TypeScript
31 lines
833 B
TypeScript
import { ipcMain } from 'electron';
|
|
|
|
import { getMpvInstance } from '../player';
|
|
import { store } from '../settings';
|
|
|
|
import { PlayerType } from '/@/shared/types/types';
|
|
|
|
let isLocalVisualizerSurfaceVisible = false;
|
|
|
|
export const setLocalVisualizerSurfaceVisible = (visible: boolean) => {
|
|
isLocalVisualizerSurfaceVisible = visible;
|
|
};
|
|
|
|
export const canHandleVisualizerDisplayMedia = (): boolean => {
|
|
const playbackType = store.get('playbackType', PlayerType.WEB) as PlayerType;
|
|
|
|
if (playbackType !== PlayerType.LOCAL) {
|
|
return false;
|
|
}
|
|
|
|
if (!isLocalVisualizerSurfaceVisible) {
|
|
return false;
|
|
}
|
|
|
|
return Boolean(getMpvInstance()?.isRunning());
|
|
};
|
|
|
|
ipcMain.on('visualizer-set-local-surface-visible', (_event, visible: boolean) => {
|
|
setLocalVisualizerSurfaceVisible(Boolean(visible));
|
|
});
|