| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- import './portable'
- import 'source-map-support/register'
- import './sentry'
- import './lru'
- import { app, ipcMain, Menu } from 'electron'
- import { parseArgs } from './cli'
- import { Application } from './app'
- import electronDebug = require('electron-debug')
- if (!process.env.TERMINUS_PLUGINS) {
- process.env.TERMINUS_PLUGINS = ''
- }
- const application = new Application()
- ipcMain.on('app:new-window', () => {
- application.newWindow()
- })
- app.on('activate', () => {
- if (!application.hasWindows()) {
- application.newWindow()
- } else {
- application.focus()
- }
- })
- app.on('window-all-closed', () => {
- app.quit()
- })
- process.on('uncaughtException' as any, err => {
- console.log(err)
- application.broadcast('uncaughtException', err)
- })
- app.on('second-instance', (_event, argv, cwd) => {
- application.handleSecondInstance(argv, cwd)
- })
- const argv = parseArgs(process.argv, process.cwd())
- if (!app.requestSingleInstanceLock()) {
- app.quit()
- app.exit(0)
- }
- if (argv.d) {
- electronDebug({
- isEnabled: true,
- showDevTools: true,
- devToolsMode: 'undocked',
- })
- }
- app.on('ready', () => {
- if (process.platform === 'darwin') {
- app.dock.setMenu(Menu.buildFromTemplate([
- {
- label: 'New window',
- click () {
- this.app.newWindow()
- },
- },
- ]))
- }
- application.init()
- application.newWindow({ hidden: argv.hidden })
- })
|