Add custom themes

This commit is contained in:
Geomitron
2024-07-11 23:10:34 -05:00
parent 2e08dec589
commit cb6e51be24
12 changed files with 347 additions and 37 deletions

View File

@@ -2,7 +2,7 @@ import { IpcInvokeHandlers, IpcToMainEmitHandlers } from '../src-shared/interfac
import { download } from './ipc/DownloadHandler.ipc.js'
import { getSettings, setSettings } from './ipc/SettingsHandler.ipc.js'
import { downloadUpdate, getCurrentVersion, getUpdateAvailable, quitAndInstall, retryUpdate } from './ipc/UpdateHandler.ipc.js'
import { getPlatform, isMaximized, maximize, minimize, openUrl, quit, restore, showFile, showFolder, showOpenDialog, toggleDevTools } from './ipc/UtilHandlers.ipc.js'
import { getPlatform, getThemeColors, isMaximized, maximize, minimize, openUrl, quit, restore, showFile, showFolder, showOpenDialog, toggleDevTools } from './ipc/UtilHandlers.ipc.js'
export function getIpcInvokeHandlers(): IpcInvokeHandlers {
return {
@@ -12,6 +12,7 @@ export function getIpcInvokeHandlers(): IpcInvokeHandlers {
getUpdateAvailable,
isMaximized,
showOpenDialog,
getThemeColors,
}
}

View File

@@ -1,5 +1,7 @@
import { app, dialog, OpenDialogOptions, shell } from 'electron'
import fsExtra from 'fs-extra'
import { ThemeColors } from '../../src-shared/interfaces/theme.interface.js'
import { mainWindow } from '../main.js'
/**
@@ -48,3 +50,11 @@ export function showFile(filePath: string) {
export async function getPlatform() {
return process.platform
}
export async function getThemeColors(path: string) {
try {
return await fsExtra.readJson(path) as ThemeColors
} catch (err) {
return null
}
}

View File

@@ -24,6 +24,7 @@ const electronApi: ContextBridgeApi = {
getUpdateAvailable: getInvoker('getUpdateAvailable'),
isMaximized: getInvoker('isMaximized'),
showOpenDialog: getInvoker('showOpenDialog'),
getThemeColors: getInvoker('getThemeColors'),
},
emit: {
download: getEmitter('download'),