Set tab size to 4

This commit is contained in:
Jonatan Heyman 2023-01-15 10:53:09 +01:00
parent 7595d3fc86
commit fbac07d338

View File

@ -1,4 +1,4 @@
import { app, BrowserWindow, shell, ipcMain } from 'electron' import { app, BrowserWindow, shell, ipcMain, Menu, nativeTheme } from 'electron'
import { release } from 'node:os' import { release } from 'node:os'
import { join } from 'node:path' import { join } from 'node:path'
@ -15,8 +15,8 @@ import { join } from 'node:path'
process.env.DIST_ELECTRON = join(__dirname, '..') process.env.DIST_ELECTRON = join(__dirname, '..')
process.env.DIST = join(process.env.DIST_ELECTRON, '../dist') process.env.DIST = join(process.env.DIST_ELECTRON, '../dist')
process.env.PUBLIC = process.env.VITE_DEV_SERVER_URL process.env.PUBLIC = process.env.VITE_DEV_SERVER_URL
? join(process.env.DIST_ELECTRON, '../public') ? join(process.env.DIST_ELECTRON, '../public')
: process.env.DIST : process.env.DIST
// Disable GPU Acceleration for Windows 7 // Disable GPU Acceleration for Windows 7
if (release().startsWith('6.1')) app.disableHardwareAcceleration() if (release().startsWith('6.1')) app.disableHardwareAcceleration()
@ -25,10 +25,12 @@ if (release().startsWith('6.1')) app.disableHardwareAcceleration()
if (process.platform === 'win32') app.setAppUserModelId(app.getName()) if (process.platform === 'win32') app.setAppUserModelId(app.getName())
if (!process.env.VITE_DEV_SERVER_URL && !app.requestSingleInstanceLock()) { if (!process.env.VITE_DEV_SERVER_URL && !app.requestSingleInstanceLock()) {
app.quit() app.quit()
process.exit(0) process.exit(0)
} }
// remove default menu
//Menu.setApplicationMenu(null)
// Remove electron security warnings // Remove electron security warnings
// This warning only shows in development mode // This warning only shows in development mode
@ -42,78 +44,80 @@ const url = process.env.VITE_DEV_SERVER_URL
const indexHtml = join(process.env.DIST, 'index.html') const indexHtml = join(process.env.DIST, 'index.html')
async function createWindow() { async function createWindow() {
win = new BrowserWindow({ win = new BrowserWindow({
title: 'Main window', title: 'Main window',
icon: join(process.env.PUBLIC, 'favicon.ico'), icon: join(process.env.PUBLIC, 'favicon.ico'),
//titleBarStyle: 'customButtonsOnHover', //titleBarStyle: 'customButtonsOnHover',
webPreferences: { webPreferences: {
preload, preload,
// Warning: Enable nodeIntegration and disable contextIsolation is not secure in production // Warning: Enable nodeIntegration and disable contextIsolation is not secure in production
// Consider using contextBridge.exposeInMainWorld // Consider using contextBridge.exposeInMainWorld
// Read more on https://www.electronjs.org/docs/latest/tutorial/context-isolation // Read more on https://www.electronjs.org/docs/latest/tutorial/context-isolation
nodeIntegration: true, nodeIntegration: true,
contextIsolation: false, contextIsolation: false,
}, },
}) })
if (process.env.VITE_DEV_SERVER_URL) { // electron-vite-vue#298 //nativeTheme.themeSource = "light"
win.loadURL(url)
// Open devTool if the app is not packaged
//win.webContents.openDevTools()
} else {
win.loadFile(indexHtml)
//win.webContents.openDevTools()
}
// Test actively push message to the Electron-Renderer if (process.env.VITE_DEV_SERVER_URL) { // electron-vite-vue#298
win.webContents.on('did-finish-load', () => { win.loadURL(url)
win?.webContents.send('main-process-message', new Date().toLocaleString()) // Open devTool if the app is not packaged
}) //win.webContents.openDevTools()
} else {
win.loadFile(indexHtml)
//win.webContents.openDevTools()
}
// Make all links open with the browser, not with the application // Test actively push message to the Electron-Renderer
win.webContents.setWindowOpenHandler(({ url }) => { win.webContents.on('did-finish-load', () => {
if (url.startsWith('https:')) shell.openExternal(url) win?.webContents.send('main-process-message', new Date().toLocaleString())
return { action: 'deny' } })
})
// Make all links open with the browser, not with the application
win.webContents.setWindowOpenHandler(({ url }) => {
if (url.startsWith('https:')) shell.openExternal(url)
return { action: 'deny' }
})
} }
app.whenReady().then(createWindow) app.whenReady().then(createWindow)
app.on('window-all-closed', () => { app.on('window-all-closed', () => {
win = null win = null
if (process.platform !== 'darwin') app.quit() if (process.platform !== 'darwin') app.quit()
}) })
app.on('second-instance', () => { app.on('second-instance', () => {
if (win) { if (win) {
// Focus on the main window if the user tried to open another // Focus on the main window if the user tried to open another
if (win.isMinimized()) win.restore() if (win.isMinimized()) win.restore()
win.focus() win.focus()
} }
}) })
app.on('activate', () => { app.on('activate', () => {
const allWindows = BrowserWindow.getAllWindows() const allWindows = BrowserWindow.getAllWindows()
if (allWindows.length) { if (allWindows.length) {
allWindows[0].focus() allWindows[0].focus()
} else { } else {
createWindow() createWindow()
} }
}) })
// New window example arg: new windows url // New window example arg: new windows url
ipcMain.handle('open-win', (_, arg) => { ipcMain.handle('open-win', (_, arg) => {
const childWindow = new BrowserWindow({ const childWindow = new BrowserWindow({
webPreferences: { webPreferences: {
preload, preload,
nodeIntegration: true, nodeIntegration: true,
contextIsolation: false, contextIsolation: false,
}, },
}) })
if (process.env.VITE_DEV_SERVER_URL) { if (process.env.VITE_DEV_SERVER_URL) {
childWindow.loadURL(`${url}#${arg}`) childWindow.loadURL(`${url}#${arg}`)
} else { } else {
childWindow.loadFile(indexHtml, { hash: arg }) childWindow.loadFile(indexHtml, { hash: arg })
} }
}) })