mirror of
				https://github.com/smartfrigde/armcord.git
				synced 2024-08-14 23:56:58 +00:00 
			
		
		
		
	add multi instance
This commit is contained in:
		
							parent
							
								
									5ec56c8cc1
								
							
						
					
					
						commit
						831d45dc45
					
				
					 7 changed files with 44 additions and 6 deletions
				
			
		|  | @ -7,6 +7,7 @@ import { | |||
|     checkIfConfigExists, | ||||
|     firstRun, | ||||
|     getConfig, | ||||
|     getConfigSync, | ||||
|     injectElectronFlags, | ||||
|     installModLoader, | ||||
|     modInstallState, | ||||
|  | @ -54,10 +55,12 @@ async function args(): Promise<void> { | |||
|     } | ||||
| } | ||||
| args(); // i want my top level awaits
 | ||||
| if (!app.requestSingleInstanceLock()) { | ||||
| if (!app.requestSingleInstanceLock() && getConfigSync("multiInstance") == (false ?? undefined)) { | ||||
|     // if value isn't set after 3.2.4
 | ||||
|     // kill if 2nd instance
 | ||||
|     app.quit(); | ||||
| } else { | ||||
|     app.commandLine.appendSwitch("disable-features", "WidgetLayering"); // fix dev tools layers
 | ||||
|     // Your data now belongs to CCP
 | ||||
|     crashReporter.start({uploadToServer: false}); | ||||
|     // enable webrtc capturer for wayland
 | ||||
|  |  | |||
|  | @ -80,6 +80,14 @@ | |||
|         </div> | ||||
|         <br /> | ||||
| 
 | ||||
|         <div class="switch acMultiInstance"> | ||||
|             <label class="header" data-string="settings-MultiInstance"></label> | ||||
|             <input id="mInstance" class="tgl tgl-light left" data-setting="multiInstance" type="checkbox" /> | ||||
|             <label class="tgl-btn left" for="mInstance"></label> | ||||
|             <p class="description" data-string="settings-MultiInstance-desc"></p> | ||||
|         </div> | ||||
|         <br /> | ||||
| 
 | ||||
|         <div class="switch acWebsocket"> | ||||
|             <label class="header" data-string="settings-invitewebsocket"></label> | ||||
|             <input id="websocket" class="tgl tgl-light left" data-setting="inviteWebsocket" type="checkbox" /> | ||||
|  |  | |||
|  | @ -140,6 +140,7 @@ | |||
|                         disableAutogain: false, | ||||
|                         mods: options.mod, | ||||
|                         dynamicIcon: false, | ||||
|                         multiInstance: false, | ||||
|                         useLegacyCapturer: false, | ||||
|                         tray: /true/i.test(document.getElementById("tray").value), | ||||
|                         startMinimized: false, | ||||
|  |  | |||
|  | @ -46,6 +46,7 @@ export function setup(): void { | |||
|         automaticPatches: false, | ||||
|         keybinds: [], | ||||
|         alternativePaste: false, | ||||
|         multiInstance: false, | ||||
|         mods: "none", | ||||
|         spellcheck: true, | ||||
|         performanceMode: "none", | ||||
|  | @ -253,6 +254,7 @@ export interface Settings { | |||
|     minimizeToTray: boolean; | ||||
|     automaticPatches: boolean; | ||||
|     alternativePaste: boolean; | ||||
|     multiInstance: boolean; | ||||
|     spellcheck: boolean; | ||||
|     mods: string; | ||||
|     dynamicIcon: boolean; | ||||
|  | @ -282,6 +284,12 @@ export async function getConfig<K extends keyof Settings>(object: K): Promise<Se | |||
|     console.log(`[Config manager] ${object}: ${returndata[object]}`); | ||||
|     return returndata[object]; | ||||
| } | ||||
| export function getConfigSync<K extends keyof Settings>(object: K) { | ||||
|     let rawdata = fs.readFileSync(getConfigLocation(), "utf-8"); | ||||
|     let returndata = JSON.parse(rawdata); | ||||
|     console.log(`[Config manager] ${object}: ${returndata[object]}`); | ||||
|     return returndata[object]; | ||||
| } | ||||
| export async function setConfig<K extends keyof Settings>(object: K, toSet: Settings[K]): Promise<void> { | ||||
|     let rawdata = fs.readFileSync(getConfigLocation(), "utf-8"); | ||||
|     let parsed = JSON.parse(rawdata); | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue