Vesktop/src/main/mediaPermissions.ts
2023-10-01 20:41:12 +04:00

22 lines
799 B
TypeScript

/*
* SPDX-License-Identifier: GPL-3.0
* Vesktop, a desktop app aiming to give you a snappier Discord Experience
* Copyright (c) 2023 Vendicated and Vencord contributors
*/
import { session, systemPreferences } from "electron";
export function registerMediaPermissionsHandler() {
if (process.platform !== "darwin") return;
session.defaultSession.setPermissionRequestHandler((_webContents, permission, callback, details) => {
if (permission === "media") {
if (details.mediaTypes!.includes("audio")) {
systemPreferences.askForMediaAccess("microphone").then(callback);
}
if (details.mediaTypes!.includes("video")) {
systemPreferences.askForMediaAccess("camera").then(callback);
}
}
});
}