diff options
| author | Lex Neva <github.com@lexneva.name> | 2019-04-15 19:56:30 -0400 |
|---|---|---|
| committer | Lex Neva <github.com@lexneva.name> | 2019-04-15 19:56:30 -0400 |
| commit | 884e193384ee34bbcb2a7cc7aa39b40e1c3334a9 (patch) | |
| tree | 93781f948a5e2a544a84ad81819a0793515a636f /electron/src/main.js | |
| parent | 9b2a47136b34a4b9cfcc42282a39fdd909e9f8af (diff) | |
rename main.js and don't open dev tools
Diffstat (limited to 'electron/src/main.js')
| -rw-r--r-- | electron/src/main.js | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/electron/src/main.js b/electron/src/main.js new file mode 100644 index 00000000..f78680e0 --- /dev/null +++ b/electron/src/main.js @@ -0,0 +1,50 @@ +import { app, BrowserWindow, ipcMain, dialog } from 'electron'; +var fs = require('fs'); + +// 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 mainWindow; + +const createWindow = () => { + // Create the browser window. + mainWindow = new BrowserWindow(); + + mainWindow.maximize(); + + // and load the index.html of the app. + if (process.argv[1] == ".") { + // run in development mode with `electron . <url>` + var url = process.argv[2]; + } else { + var url = process.argv[1]; + } + mainWindow.loadURL(url); + + //mainWindow.webContents.openDevTools(); + + // Emitted when the window is closed. + mainWindow.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. + mainWindow = 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', () => { + app.quit(); +}); + +ipcMain.on('print', function (event, pageSize) { + mainWindow.webContents.printToPDF({"pageSize": pageSize}, function(error, data) { + dialog.showSaveDialog(mainWindow, {"defaultPath": "inkstitch.pdf"}, function(filename, bookmark) { + fs.writeFileSync(filename, data, 'utf-8'); + }) + }) +})
\ No newline at end of file |
