forked from miao-moe/QZMusic_PC
feat: 优化界面;IPC-mpv控制;预加载脚本
This commit is contained in:
@@ -1,8 +1,20 @@
|
||||
"use strict";
|
||||
const electron = require("electron");
|
||||
electron.contextBridge.exposeInMainWorld("electronAPI", {
|
||||
// 窗口控制
|
||||
minimizeWindow: () => electron.ipcRenderer.send("window-minimize"),
|
||||
maximizeWindow: () => electron.ipcRenderer.send("window-maximize"),
|
||||
closeWindow: () => electron.ipcRenderer.send("window-close"),
|
||||
isMaximized: () => electron.ipcRenderer.invoke("window-is-maximized")
|
||||
isMaximized: () => electron.ipcRenderer.invoke("window-is-maximized"),
|
||||
// MPV 控制 (Renderer -> Main)
|
||||
mpvLoad: (url, autoPlay = true) => electron.ipcRenderer.send("mpv-load", url, autoPlay),
|
||||
mpvPlay: () => electron.ipcRenderer.send("mpv-play"),
|
||||
mpvPause: () => electron.ipcRenderer.send("mpv-pause"),
|
||||
mpvSeek: (time) => electron.ipcRenderer.send("mpv-seek", time),
|
||||
mpvSetVolume: (volume) => electron.ipcRenderer.send("mpv-volume", volume),
|
||||
// MPV 事件 (Main -> Renderer)
|
||||
onMpvTimeUpdate: (callback) => electron.ipcRenderer.on("mpv-time-update", (_, time) => callback(time)),
|
||||
onMpvDuration: (callback) => electron.ipcRenderer.on("mpv-duration", (_, duration) => callback(duration)),
|
||||
onMpvPlayState: (callback) => electron.ipcRenderer.on("mpv-play-state", (_, isPlaying) => callback(isPlaying)),
|
||||
onMpvEnded: (callback) => electron.ipcRenderer.on("mpv-ended", () => callback())
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user