22 lines
384 B
TypeScript
22 lines
384 B
TypeScript
|
|
import { app } from "electron/main";
|
||
|
|
|
||
|
|
let initialized = false;
|
||
|
|
|
||
|
|
export function initSingleInstance(onSecondInstance?: () => void): boolean {
|
||
|
|
if (initialized) {
|
||
|
|
return true;
|
||
|
|
}
|
||
|
|
|
||
|
|
initialized = true;
|
||
|
|
const hasLock = app.requestSingleInstanceLock();
|
||
|
|
if (!hasLock) {
|
||
|
|
return false;
|
||
|
|
}
|
||
|
|
|
||
|
|
app.on("second-instance", () => {
|
||
|
|
onSecondInstance?.();
|
||
|
|
});
|
||
|
|
|
||
|
|
return true;
|
||
|
|
}
|