Remember Window State
This commit is contained in:
parent
994a605ce0
commit
93d8268a68
47
main.js
47
main.js
|
@ -1,7 +1,13 @@
|
|||
/* global __dirname, process */
|
||||
|
||||
const electron = require('electron');
|
||||
const {
|
||||
app: APP,
|
||||
BrowserWindow,
|
||||
Menu,
|
||||
shell
|
||||
} = require('electron');
|
||||
const isDev = require('electron-is-dev');
|
||||
const windowStateKeeper = require('electron-window-state');
|
||||
const {
|
||||
setupAlwaysOnTopMain,
|
||||
initPopupsConfigurationMain,
|
||||
|
@ -10,8 +16,6 @@ const {
|
|||
const path = require('path');
|
||||
const URL = require('url');
|
||||
|
||||
const { app: APP, BrowserWindow, Menu } = electron;
|
||||
|
||||
/**
|
||||
* Load debug utilities (don't open the DevTools window by default though).
|
||||
*/
|
||||
|
@ -38,20 +42,6 @@ const indexURL = URL.format({
|
|||
*/
|
||||
let jitsiMeetWindow = null;
|
||||
|
||||
/**
|
||||
* Options used when creating the main Jitsi Meet window.
|
||||
*/
|
||||
const jitsiMeetWindowOptions = {
|
||||
width: 800,
|
||||
height: 600,
|
||||
minWidth: 800,
|
||||
minHeight: 600,
|
||||
titleBarStyle: 'hidden',
|
||||
webPreferences: {
|
||||
nativeWindowOpen: true
|
||||
}
|
||||
};
|
||||
|
||||
/**
|
||||
* Sets the APP object listeners.
|
||||
*/
|
||||
|
@ -87,7 +77,28 @@ function setAPPListeners() {
|
|||
function createJitsiMeetWindow() {
|
||||
Menu.setApplicationMenu(null);
|
||||
|
||||
// Load the previous state with fallback to defaults
|
||||
const jitsiMeetWindowState = windowStateKeeper({
|
||||
defaultWidth: 800,
|
||||
defaultHeight: 600
|
||||
});
|
||||
|
||||
// Options used when creating the main Jitsi Meet window.
|
||||
const jitsiMeetWindowOptions = {
|
||||
x: jitsiMeetWindowState.x,
|
||||
y: jitsiMeetWindowState.y,
|
||||
width: jitsiMeetWindowState.width,
|
||||
height: jitsiMeetWindowState.height,
|
||||
minWidth: 800,
|
||||
minHeight: 600,
|
||||
titleBarStyle: 'hidden',
|
||||
webPreferences: {
|
||||
nativeWindowOpen: true
|
||||
}
|
||||
};
|
||||
|
||||
jitsiMeetWindow = new BrowserWindow(jitsiMeetWindowOptions);
|
||||
jitsiMeetWindowState.manage(jitsiMeetWindow);
|
||||
jitsiMeetWindow.loadURL(indexURL);
|
||||
initPopupsConfigurationMain(jitsiMeetWindow);
|
||||
|
||||
|
@ -96,7 +107,7 @@ function createJitsiMeetWindow() {
|
|||
|
||||
if (!target || target === 'browser') {
|
||||
event.preventDefault();
|
||||
electron.shell.openExternal(url);
|
||||
shell.openExternal(url);
|
||||
}
|
||||
});
|
||||
|
||||
|
|
|
@ -3503,6 +3503,11 @@
|
|||
"resolved": "https://registry.npmjs.org/deep-diff/-/deep-diff-0.3.8.tgz",
|
||||
"integrity": "sha1-wB3mPvsO7JeYgB1Ax+Da4ltYLIQ="
|
||||
},
|
||||
"deep-equal": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.0.1.tgz",
|
||||
"integrity": "sha1-9dJgKStmDghO/0zbyfCK0yR0SLU="
|
||||
},
|
||||
"deep-extend": {
|
||||
"version": "0.6.0",
|
||||
"resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz",
|
||||
|
@ -4063,6 +4068,16 @@
|
|||
"integrity": "sha1-07DYWTgUBE4JLs4hCPw6ya6kuQA=",
|
||||
"dev": true
|
||||
},
|
||||
"electron-window-state": {
|
||||
"version": "4.1.1",
|
||||
"resolved": "https://registry.npmjs.org/electron-window-state/-/electron-window-state-4.1.1.tgz",
|
||||
"integrity": "sha1-azT9wxs4UU3+yLfI97XUrdtnYy0=",
|
||||
"requires": {
|
||||
"deep-equal": "1.0.1",
|
||||
"jsonfile": "2.4.0",
|
||||
"mkdirp": "0.5.1"
|
||||
}
|
||||
},
|
||||
"elegant-spinner": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/elegant-spinner/-/elegant-spinner-1.0.1.tgz",
|
||||
|
@ -6133,8 +6148,7 @@
|
|||
"graceful-fs": {
|
||||
"version": "4.1.11",
|
||||
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
|
||||
"integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=",
|
||||
"dev": true
|
||||
"integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg="
|
||||
},
|
||||
"grouped-queue": {
|
||||
"version": "0.3.3",
|
||||
|
@ -7432,7 +7446,6 @@
|
|||
"version": "2.4.0",
|
||||
"resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-2.4.0.tgz",
|
||||
"integrity": "sha1-NzaitCi4e72gzIO1P6PWM6NcKug=",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"graceful-fs": "4.1.11"
|
||||
}
|
||||
|
|
|
@ -40,6 +40,7 @@
|
|||
"@atlaskit/theme": "3.2.2",
|
||||
"electron-debug": "2.0.0",
|
||||
"electron-is-dev": "0.3.0",
|
||||
"electron-window-state": "4.1.1",
|
||||
"history": "4.7.2",
|
||||
"jitsi-meet-electron-utils": "github:jitsi/jitsi-meet-electron-utils#1972c3bf0884ace68eb496894dabae593d6dbf49",
|
||||
"react": "16.3.2",
|
||||
|
|
Loading…
Reference in New Issue