aboutsummaryrefslogtreecommitdiffstats
path: root/src/index.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/index.js')
-rw-r--r--src/index.js31
1 files changed, 19 insertions, 12 deletions
diff --git a/src/index.js b/src/index.js
index 396d2e649..ab4187e68 100644
--- a/src/index.js
+++ b/src/index.js
@@ -1,3 +1,5 @@
1/* eslint-disable import/first */
2
1import { 3import {
2 app, 4 app,
3 BrowserWindow, 5 BrowserWindow,
@@ -5,13 +7,26 @@ import {
5 ipcMain, 7 ipcMain,
6 session, 8 session,
7} from 'electron'; 9} from 'electron';
8import isDevMode from 'electron-is-dev'; 10
9import fs from 'fs-extra'; 11import fs from 'fs-extra';
10import path from 'path'; 12import path from 'path';
11import windowStateKeeper from 'electron-window-state'; 13import windowStateKeeper from 'electron-window-state';
12import { enforceMacOSAppLocation } from 'electron-util'; 14import { enforceMacOSAppLocation } from 'electron-util';
13import ms from 'ms'; 15import ms from 'ms';
14 16
17require('@electron/remote/main').initialize();
18
19import {
20 DEFAULT_APP_SETTINGS,
21 DEFAULT_WINDOW_OPTIONS,
22} from './config';
23
24import {
25 isMac,
26 isWindows,
27 isLinux,
28} from './environment';
29
15// TODO: This seems to be duplicated between here and 'config.js' 30// TODO: This seems to be duplicated between here and 'config.js'
16// Set app directory before loading user modules 31// Set app directory before loading user modules
17if (process.env.FERDI_APPDATA_DIR != null) { 32if (process.env.FERDI_APPDATA_DIR != null) {
@@ -25,16 +40,11 @@ if (process.env.FERDI_APPDATA_DIR != null) {
25 app.setPath('userData', path.join(app.getPath('appData'), app.name)); 40 app.setPath('userData', path.join(app.getPath('appData'), app.name));
26} 41}
27 42
43const isDevMode = !app.isPackaged;
28if (isDevMode) { 44if (isDevMode) {
29 app.setPath('userData', path.join(app.getPath('appData'), `${app.name}Dev`)); 45 app.setPath('userData', path.join(app.getPath('appData'), `${app.name}Dev`));
30} 46}
31 47
32/* eslint-disable import/first */
33import {
34 isMac,
35 isWindows,
36 isLinux,
37} from './environment';
38import { mainIpcHandler as basicAuthHandler } from './features/basicAuth'; 48import { mainIpcHandler as basicAuthHandler } from './features/basicAuth';
39import ipcApi from './electron/ipc-api'; 49import ipcApi from './electron/ipc-api';
40import Tray from './lib/Tray'; 50import Tray from './lib/Tray';
@@ -42,15 +52,10 @@ import DBus from './lib/DBus';
42import Settings from './electron/Settings'; 52import Settings from './electron/Settings';
43import handleDeepLink from './electron/deepLinking'; 53import handleDeepLink from './electron/deepLinking';
44import { isPositionValid } from './electron/windowUtils'; 54import { isPositionValid } from './electron/windowUtils';
45import askFormacOSPermissions from './electron/macOSPermissions';
46import { appId } from './package.json'; // eslint-disable-line import/no-unresolved 55import { appId } from './package.json'; // eslint-disable-line import/no-unresolved
47import * as buildInfo from './buildInfo.json'; // eslint-disable-line import/no-unresolved 56import * as buildInfo from './buildInfo.json'; // eslint-disable-line import/no-unresolved
48import './electron/exception'; 57import './electron/exception';
49 58
50import {
51 DEFAULT_APP_SETTINGS,
52 DEFAULT_WINDOW_OPTIONS,
53} from './config';
54import { asarPath } from './helpers/asar-helpers'; 59import { asarPath } from './helpers/asar-helpers';
55import { isValidExternalURL } from './helpers/url-helpers'; 60import { isValidExternalURL } from './helpers/url-helpers';
56import userAgent, { ferdiVersion } from './helpers/userAgent-helpers'; 61import userAgent, { ferdiVersion } from './helpers/userAgent-helpers';
@@ -329,6 +334,8 @@ const createWindow = () => {
329 }); 334 });
330 335
331 if (isMac) { 336 if (isMac) {
337 // eslint-disable-next-line global-require
338 const askFormacOSPermissions = require('./electron/macOSPermissions');
332 setTimeout(() => askFormacOSPermissions(mainWindow), ms('30s')); 339 setTimeout(() => askFormacOSPermissions(mainWindow), ms('30s'));
333 } 340 }
334 341