diff options
| author | Pliable Pixels <pliablepixels@gmail.com> | 2017-09-21 14:31:10 -0400 |
|---|---|---|
| committer | Pliable Pixels <pliablepixels@gmail.com> | 2017-09-21 14:31:10 -0400 |
| commit | 02380f39ae23045318556ed975809adbd0160fe0 (patch) | |
| tree | c0dd009210543b224c781da5c94644f71d0783fa /electron_js | |
| parent | b28028ac4082842143b0f528d6bc539da6ccb419 (diff) | |
added other files, also fixed xwalk
Diffstat (limited to 'electron_js')
| -rw-r--r-- | electron_js/main.js | 112 | ||||
| -rw-r--r-- | electron_js/package.json | 5 |
2 files changed, 117 insertions, 0 deletions
diff --git a/electron_js/main.js b/electron_js/main.js new file mode 100644 index 00000000..7aae0ea0 --- /dev/null +++ b/electron_js/main.js @@ -0,0 +1,112 @@ +const electron = require('electron'); +const windowStateKeeper = require('electron-window-state'); +const {app, globalShortcut} = electron; + +// Module to create native browser window. +const {BrowserWindow} = electron; +var isFs = false; + + + + + +// Keep a global reference of the window object, if you don't, the window will +// be closed automatically when the JavaScript object is garbage collected. +let win; +app.commandLine.appendSwitch ('ignore-certificate-errors', 'true'); + +const shouldQuit = app.makeSingleInstance((commandLine, workingDirectory) => { + // Someone tried to run a second instance, we should focus our window. + if (win) { + if (win.isMinimized()) win.restore(); + win.focus(); + } +}); + +if (shouldQuit) { + app.quit(); + return; +} + + +function createWindow() { + +const mx = globalShortcut.register('CommandOrControl+Alt+F', () => { + console.log('CommandOrControl+F is pressed'); + isFs = !isFs; + win.setFullScreen(isFs); + }) + + const dbgx = globalShortcut.register('CommandOrControl+Alt+D', () => { + console.log('CommandOrControl+Alt+D is pressed'); + win.webContents.openDevTools(); + }) + + + // Create the browser window. + let mainWindowState = windowStateKeeper({ + defaultWidth: 1000, + defaultHeight: 800, + webPreferences:{nodeIntegration:false} + + }); + win = new BrowserWindow({ + x: mainWindowState.x, + y: mainWindowState.y, + width: mainWindowState.width, + height: mainWindowState.height, + webPreferences:{nodeIntegration:false}}); + + mainWindowState.manage(win); + // fs will be arg 1 if its not run in electron debug mode + if (process.argv.slice(1)=='fs' || process.argv.slice(2)=='fs') + { + win.setFullScreen(true); + isFs = true; + } + + + + // and load the index.html of the app. + win.loadURL(`file://${__dirname}/index.html`); + + // Open the DevTools. + //win.webContents.openDevTools(); + + // Emitted when the window is closed. + win.on('closed', () => { + // Dereference the window object, usually you would store windows + // in an array if your app supports multi windows, this is the time + // when you should delete the corresponding element. + win = null; + }); +} + +// This method will be called when Electron has finished +// initialization and is ready to create browser windows. +// Some APIs can only be used after this event occurs. +app.on('ready', createWindow); + + + +// Quit when all windows are closed. +app.on('window-all-closed', () => { + // On macOS it is common for applications and their menu bar + // to stay active until the user quits explicitly with Cmd + Q + if (process.platform !== 'darwin') { + app.quit(); + } +}); + +app.on('activate', () => { + // On macOS it's common to re-create a window in the app when the + // dock icon is clicked and there are no other windows open. + if (win === null) { + createWindow(); + } +}); + +app.on('will-quit', () => { + // Unregister all shortcuts. + globalShortcut.unregisterAll() +}); diff --git a/electron_js/package.json b/electron_js/package.json new file mode 100644 index 00000000..bcab2f07 --- /dev/null +++ b/electron_js/package.json @@ -0,0 +1,5 @@ +{ + "name" : "zmNinjaDesktop", + "version" : "0.1.0", + "main" : "main.js" +} |
