diff --git a/main.ts b/main.ts index a219ebb..80ac742 100644 --- a/main.ts +++ b/main.ts @@ -2,6 +2,9 @@ import { app, BrowserWindow, screen } from 'electron'; import * as path from 'path'; import * as url from 'url'; +// Initialize remote module +require('@electron/remote/main').initialize(); + let win: BrowserWindow = null; const args = process.argv.slice(1), serve = args.some(val => val === '--serve'); diff --git a/package-lock.json b/package-lock.json index 90c55f4..6165a4c 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1629,6 +1629,12 @@ } } }, + "@electron/remote": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@electron/remote/-/remote-1.0.4.tgz", + "integrity": "sha512-kguDJRhL3ZynHrkbX8Tr7xoAzGsNgh4eqXkycXb6cgXbOgehGqkBVe+MnjSVMXz3QJykerGKPy28gqcM7AFGYw==", + "dev": true + }, "@eslint/eslintrc": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.3.0.tgz", @@ -6819,11 +6825,6 @@ } } }, - "electron-log": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/electron-log/-/electron-log-4.3.1.tgz", - "integrity": "sha512-S/0CMjYjgyWUsZ3d27VvErPaI5W4oILp4jfeCuN4DhDqrJW6jKRUD2PxFfTdeZEIjM7+fttGg7A61rPcAcZC1w==" - }, "electron-publish": { "version": "22.9.1", "resolved": "https://registry.npmjs.org/electron-publish/-/electron-publish-22.9.1.tgz", diff --git a/package.json b/package.json index c114728..37d7447 100644 --- a/package.json +++ b/package.json @@ -40,7 +40,9 @@ "version": "conventional-changelog -i CHANGELOG.md -s -r 0 && git add CHANGELOG.md", "lint": "ng lint" }, - "dependencies": {}, + "dependencies": { + "@electron/remote": "1.0.4" + }, "devDependencies": { "@angular-builders/custom-webpack": "11.0.0", "@angular-devkit/build-angular": "0.1102.0", diff --git a/src/app/core/services/electron/electron.service.ts b/src/app/core/services/electron/electron.service.ts index 7dc81e8..e6e4bab 100644 --- a/src/app/core/services/electron/electron.service.ts +++ b/src/app/core/services/electron/electron.service.ts @@ -2,7 +2,8 @@ import { Injectable } from '@angular/core'; // If you import a module but never use any of the imported values other than as TypeScript types, // the resulting javascript file will look as if you never imported the module at all. -import { ipcRenderer, webFrame, remote } from 'electron'; +import { ipcRenderer, webFrame } from 'electron'; +import * as remote from '@electron/remote'; import * as childProcess from 'child_process'; import * as fs from 'fs'; @@ -26,8 +27,9 @@ export class ElectronService { this.ipcRenderer = window.require('electron').ipcRenderer; this.webFrame = window.require('electron').webFrame; - // If you wan to use remote object, pleanse set enableRemoteModule to true in main.ts - // this.remote = window.require('electron').remote; + // If you want to use remote object in renderer process, please set enableRemoteModule to true in main.ts + // this.remote = window.require('@electron/remote'); + // console.log('remote - globalShortcut', this.remote.globalShortcut); this.childProcess = window.require('child_process'); this.fs = window.require('fs');