mirror of
https://github.com/pierre42100/ComunicDesktop
synced 2024-10-22 22:03:25 +00:00
79 lines
1.6 KiB
JavaScript
79 lines
1.6 KiB
JavaScript
/**
|
|
* Main Window script
|
|
*
|
|
* @author The Comunic authors
|
|
*/
|
|
|
|
const electron = require('electron');
|
|
const BrowserWindow = electron.BrowserWindow;
|
|
const {Menu, Tray} = require('electron');
|
|
const Config = require("../Config");
|
|
const TrayMenu = require("./TrayMenu");
|
|
const ApplicationMenu = require("./ApplicationMenu");
|
|
const fs = require("fs");
|
|
|
|
|
|
let mainWindow;
|
|
let tray = null;
|
|
let page_finished_loading = false;
|
|
|
|
|
|
/**
|
|
* Show main window
|
|
*/
|
|
exports.show = function(){
|
|
|
|
//Create and show main window
|
|
mainWindow = new BrowserWindow({
|
|
icon:'icon.png',
|
|
webPreferences: {
|
|
nodeIntegration: false
|
|
},
|
|
//show: false
|
|
});
|
|
//mainWindow.maximize();
|
|
|
|
//set the url which must be open
|
|
mainWindow.loadURL(Config.access_url);
|
|
|
|
|
|
mainWindow.on('closed', () =>{
|
|
//To close the window
|
|
mainWindow = null;
|
|
});
|
|
|
|
|
|
//Create tray
|
|
tray = new Tray('./icon.png');
|
|
tray.setToolTip('Comunic');
|
|
tray.setContextMenu(TrayMenu);
|
|
|
|
console.log("Started successfully");
|
|
|
|
//Set application menu
|
|
Menu.setApplicationMenu(ApplicationMenu.Get(mainWindow));
|
|
|
|
mainWindow.once('ready-to-show', () => {
|
|
mainWindow.show();
|
|
});
|
|
|
|
mainWindow.webContents.on('did-finish-load', function() {
|
|
page_finished_loading = true;
|
|
|
|
//Inject CSS
|
|
fs.readFile("./app.css", (err, data) => {
|
|
|
|
//Check for errors
|
|
if(err){
|
|
console.error("Error while loading ./app.css: " + err);
|
|
return;
|
|
}
|
|
|
|
let style = data.toString();
|
|
mainWindow.webContents.executeJavaScript("let style = document.createElement('style');" +
|
|
"style.innerHTML = decodeURIComponent(\""+encodeURIComponent(style)+"\");" +
|
|
"document.head.appendChild(style);");
|
|
|
|
});
|
|
});
|
|
} |