Security News
NIST Misses 2024 Deadline to Clear NVD Backlog
NIST has failed to meet its self-imposed deadline of clearing the NVD's backlog by the end of the fiscal year. Meanwhile, CVE's awaiting analysis have increased by 33% since June.
electron-window-state
Advanced tools
Simple module that helps to save and restore size and position of Electron windows.
A library to store and restore window sizes and positions for your Electron app
Heavily influenced by the implementation in electron-boilerplate.
$ npm install --save electron-window-state
const windowStateKeeper = require('electron-window-state');
let win;
app.on('ready', function () {
// Load the previous state with fallback to defaults
let mainWindowState = windowStateKeeper({
defaultWidth: 1000,
defaultHeight: 800
});
// Create the window using the state information
win = new BrowserWindow({
'x': mainWindowState.x,
'y': mainWindowState.y,
'width': mainWindowState.width,
'height': mainWindowState.height
});
// Let us register listeners on the window, so we can update the state
// automatically (the listeners will be removed when the window is closed)
// and restore the maximized or full screen state
mainWindowState.manage(win);
});
Note: Don't call this function before the ready
event is fired.
defaultWidth
- Number
The width that should be returned if no file exists yet. Defaults to 800
.
defaultHeight
- Number
The height that should be returned if no file exists yet. Defaults to 600
.
path
- String
The path where the state file should be written to. Defaults to
app.getPath('userData')
file
- String
The name of file. Defaults to window-state.json
maximize
- Boolean
Should we automatically maximize the window, if it was last closed
maximized. Defaults to true
fullScreen
- Boolean
Should we automatically restore the window to full screen, if it was last
closed full screen. Defaults to true
const windowState = windowStateKeeper({
defaultWidth: 1000,
defaultHeight: 800
});
x
- Number
The saved x
coordinate of the loaded state. undefined
if the state has not
been saved yet.
y
- Number
The saved y
coordinate of the loaded state. undefined
if the state has not
been saved yet.
width
- Number
The saved width
of loaded state. defaultWidth
if the state has not been
saved yet.
height
- Number
The saved heigth
of loaded state. defaultHeight
if the state has not been
saved yet.
isMaximized
- Boolean
true
if the window state was saved while the the window was maximized.
undefined
if the state has not been saved yet.
isFullScreen
- Boolean
true
if the window state was saved while the the window was in full screen
mode. undefined
if the state has not been saved yet.
manage(window)
- Function
Register listeners on the given BrowserWindow
for events that are
related to size or position changes (resize
, move
). It will also restore
the window's maximized or full screen state.
When the window is closed we automatically remove the listeners and save the
state.
unmanage
- Function
Removes all listeners of the managed BrowserWindow
in case it does not
need to be managed anymore.
saveState(window)
- Function
Saves the current state of the given BrowserWindow
. This exists mostly for
legacy purposes, and in most cases it's better to just use manage
.
MIT © Marcel Wiehle
FAQs
Simple module that helps to save and restore size and position of Electron windows.
The npm package electron-window-state receives a total of 24,300 weekly downloads. As such, electron-window-state popularity was classified as popular.
We found that electron-window-state demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
NIST has failed to meet its self-imposed deadline of clearing the NVD's backlog by the end of the fiscal year. Meanwhile, CVE's awaiting analysis have increased by 33% since June.
Security News
Cloudflare has launched a setup wizard allowing users to easily create and manage a security.txt file for vulnerability disclosure on their websites.
Security News
The Socket Research team breaks down a malicious npm package targeting the legitimate DOMPurify library. It uses obfuscated code to hide that it is exfiltrating browser and crypto wallet data.