mirror of
https://github.com/netzbegruenung/jitsi-meet-electron.git
synced 2024-05-04 09:43:42 +02:00
02229f2c2a
A smaller window makes it for a bad experience.
69 lines
1.6 KiB
JavaScript
69 lines
1.6 KiB
JavaScript
/* global __dirname, process */
|
|
//Electron includes
|
|
const electron = require("electron");
|
|
const APP = electron.app;
|
|
const BrowserWindow = electron.BrowserWindow;
|
|
|
|
const path = require("path");
|
|
const url = require("url");
|
|
|
|
/**
|
|
* URL for index.html which will be our entry point.
|
|
*/
|
|
const indexURL = url.format({
|
|
pathname: path.join(__dirname, "windows", "jitsi-meet", "index.html"),
|
|
protocol: "file:",
|
|
slashes: true
|
|
});
|
|
|
|
/**
|
|
* The window object that will load the iframe with Jitsi Meet.
|
|
* IMPORTANT: Must be defined as global in order to not be garbage collected
|
|
* acidentally.
|
|
*/
|
|
let jitsiMeetWindow = null;
|
|
|
|
/**
|
|
* Options used when creating the main Jitsi Meet window.
|
|
*/
|
|
const jitsiMeetWindowOptions = {
|
|
width: 800,
|
|
height: 600,
|
|
minWidth: 800,
|
|
minHeight: 600,
|
|
titleBarStyle: 'hidden'
|
|
};
|
|
|
|
/**
|
|
* Sets the APP object listeners.
|
|
*/
|
|
function setAPPListeners () {
|
|
APP.on("ready", createJitsiMeetWindow);
|
|
APP.on("window-all-closed", () => {
|
|
// Don"t quit the application for Mac OS
|
|
if (process.platform !== "darwin") {
|
|
APP.quit();
|
|
}
|
|
});
|
|
APP.on("activate", () => {
|
|
if (jitsiMeetWindow === null) {
|
|
createJitsiMeetWindow();
|
|
}
|
|
});
|
|
}
|
|
|
|
/**
|
|
* Opens new window with index.html(Jitsi Meet is loaded in iframe there).
|
|
*/
|
|
function createJitsiMeetWindow () {
|
|
jitsiMeetWindow = new BrowserWindow(jitsiMeetWindowOptions);
|
|
jitsiMeetWindow.loadURL(indexURL);
|
|
|
|
jitsiMeetWindow.on("closed", () => {
|
|
jitsiMeetWindow = null;
|
|
});
|
|
}
|
|
|
|
//Start the application:
|
|
setAPPListeners();
|