diff --git a/electron/index.js b/electron/index.js index 3961be89..5f63789b 100644 --- a/electron/index.js +++ b/electron/index.js @@ -6,6 +6,7 @@ const url = require("url"); const fs = require("fs"); const steam = require("./steam"); const asyncLock = require("async-lock"); +const windowStateKeeper = require("electron-window-state"); const isDev = app.commandLine.hasSwitch("dev"); const isLocal = app.commandLine.hasSwitch("local"); @@ -40,12 +41,19 @@ function createWindow() { faviconExtension = ".ico"; } + const mainWindowState = windowStateKeeper({ + defaultWidth: 1000, + defaultHeight: 800, + }); + win = new BrowserWindow({ - width: 1280, - height: 800, + x: mainWindowState.x, + y: mainWindowState.y, + width: mainWindowState.width, + height: mainWindowState.height, show: false, backgroundColor: "#222428", - useContentSize: true, + useContentSize: false, minWidth: 800, minHeight: 600, title: "shapez.io Standalone", @@ -69,6 +77,8 @@ function createWindow() { allowRunningInsecureContent: false, }); + mainWindowState.manage(win); + if (isLocal) { win.loadURL("http://localhost:3005"); } else { diff --git a/electron/package.json b/electron/package.json index f866811e..a0b97f6f 100644 --- a/electron/package.json +++ b/electron/package.json @@ -15,6 +15,7 @@ }, "dependencies": { "async-lock": "^1.2.8", - "electron": "16.0.7" + "electron": "16.0.7", + "electron-window-state": "^5.0.3" } } diff --git a/electron/yarn.lock b/electron/yarn.lock index 39142b68..22eb0a46 100644 --- a/electron/yarn.lock +++ b/electron/yarn.lock @@ -141,6 +141,14 @@ duplexer3@^0.1.4: resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= +electron-window-state@^5.0.3: + version "5.0.3" + resolved "https://registry.yarnpkg.com/electron-window-state/-/electron-window-state-5.0.3.tgz#4f36d09e3f953d87aff103bf010f460056050aa8" + integrity sha512-1mNTwCfkolXl3kMf50yW3vE2lZj0y92P/HYWFBrb+v2S/pCka5mdwN3cagKm458A7NjndSwijynXgcLWRodsVg== + dependencies: + jsonfile "^4.0.0" + mkdirp "^0.5.1" + electron@16.0.7: version "16.0.7" resolved "https://registry.yarnpkg.com/electron/-/electron-16.0.7.tgz#87eaccd05ab61563d3c17dfbad2949bba7ead162" @@ -351,7 +359,7 @@ minimist@^1.2.5: resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== -mkdirp@^0.5.4: +mkdirp@^0.5.1, mkdirp@^0.5.4: version "0.5.5" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==