Fix settings corrupting
This commit is contained in:
		
							parent
							
								
									7ce37f858c
								
							
						
					
					
						commit
						78deb0ebad
					
				
					 1 changed files with 9 additions and 3 deletions
				
			
		|  | @ -23,12 +23,18 @@ function readSettings() { | |||
| 
 | ||||
| ipcMain.handle(IpcEvents.GET_SETTINGS_DIR, () => SETTINGS_DIR); | ||||
| ipcMain.handle(IpcEvents.GET_QUICK_CSS, () => readCss()); | ||||
| // .on because we need Settings synchronously (ipcRenderer.sendSync)
 | ||||
| ipcMain.on(IpcEvents.GET_SETTINGS, (e) => e.returnValue = readSettings()); | ||||
| ipcMain.handle(IpcEvents.SET_SETTINGS, (_, s) => void writeFile(SETTINGS_FILE, s)); | ||||
| ipcMain.handle(IpcEvents.OPEN_PATH, (_, path) => shell.openPath(path)); | ||||
| ipcMain.handle(IpcEvents.OPEN_EXTERNAL, (_, url) => shell.openExternal(url)); | ||||
| 
 | ||||
| // .on because we need Settings synchronously (ipcRenderer.sendSync)
 | ||||
| ipcMain.on(IpcEvents.GET_SETTINGS, (e) => e.returnValue = readSettings()); | ||||
| 
 | ||||
| // This is required because otherwise calling SET_SETTINGS in quick succession may lead to concurrent writes
 | ||||
| let settingsWriteQueue = Promise.resolve(); | ||||
| ipcMain.handle(IpcEvents.SET_SETTINGS, (_, s) => { | ||||
|     settingsWriteQueue = settingsWriteQueue.then(() => writeFile(SETTINGS_FILE, s)); | ||||
| }); | ||||
| 
 | ||||
| export function initIpc(mainWindow: BrowserWindow) { | ||||
|     open(QUICKCSS_PATH, "a+").then(fd => { | ||||
|         fd.close(); | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue