aboutsummaryrefslogtreecommitdiff
path: root/main.js
diff options
context:
space:
mode:
authorChristoph Settgast <csett86@web.de>2021-03-11 21:28:31 +0100
committerSaúl Ibarra Corretgé <s@saghul.net>2021-03-15 00:20:20 +0100
commit5c49372e11eeb396fbc5a8b80234c463c89d40b5 (patch)
treec6591602ad199fc859ba2042473ad3cedb98b005 /main.js
parent9b09a4bfa9d875cd45fd81879a3c1895fd372502 (diff)
Enhancements to make it more Mac App Store (mas) compatible
- disable the autoupdater if running as mas (was not working anyway, just logging an error on every start) - replace check via app.requestSingleInstanceLock() with LSMultipleInstancesProhibited in Info.plist due to https://github.com/electron/electron/issues/15958 - Quit the app also when all windows are closed to conform to macOS Human Interface Guidelines Comments from review: If the application is a single-window app, it might be appropriate to save data and quit the app when the main window is closed. - "asarUnpack": "**/*.node" to also sign the native addons when packaging - add the required mas-specific entitlements which include the app-sandbox key Signed-off-by: Christoph Settgast <csett86@web.de>
Diffstat (limited to 'main.js')
-rw-r--r--main.js12
1 files changed, 6 insertions, 6 deletions
diff --git a/main.js b/main.js
index 9487327..2c6dc3e 100644
--- a/main.js
+++ b/main.js
@@ -162,7 +162,9 @@ function createJitsiMeetWindow() {
setApplicationMenu();
// Check for Updates.
- autoUpdater.checkForUpdatesAndNotify();
+ if (!process.mas) {
+ autoUpdater.checkForUpdatesAndNotify();
+ }
// Load the previous window state with fallback to defaults.
const windowState = windowStateKeeper({
@@ -290,8 +292,9 @@ function handleProtocolCall(fullProtocolCall) {
/**
* Force Single Instance Application.
+ * Handle this on darwin via LSMultipleInstancesProhibited in Info.plist as below does not work on MAS
*/
-const gotInstanceLock = app.requestSingleInstanceLock();
+const gotInstanceLock = process.platform === 'darwin' ? true : app.requestSingleInstanceLock();
if (!gotInstanceLock) {
app.quit();
@@ -345,10 +348,7 @@ app.on('second-instance', (event, commandLine) => {
});
app.on('window-all-closed', () => {
- // Don't quit the application on macOS.
- if (process.platform !== 'darwin') {
- app.quit();
- }
+ app.quit();
});
// remove so we can register each time as we run the app.