Quantum 
							
						 
					 
					
						
						
							
						
						e123e02e15 
					 
					
						
						
							
							[idd] helper/CWindow: use sane value for hbrBackground  
						
						
						
						
					 
					
						2025-09-17 18:05:00 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						85e728b59e 
					 
					
						
						
							
							[idd] helper: add simple static widget implementation  
						
						
						
						
					 
					
						2025-09-17 18:05:00 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						042450a708 
					 
					
						
						
							
							[idd] helper: implement basic config class  
						
						
						
						
					 
					
						2025-09-17 18:05:00 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						9009217366 
					 
					
						
						
							
							[idd] helper: stop using MsgWaitForMultipleObjects  
						
						... 
						
						
						
						`MsgWaitForMultipleObjects` doesn't handle inner message loops,
which may happen during `TrackPopupMenu`, causing exits to fail. 
						
						
					 
					
						2025-09-15 09:22:27 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						d006dbb547 
					 
					
						
						
							
							[idd] helper/CWindow: add onClose and onDestroy hooks  
						
						
						
						
					 
					
						2025-09-15 09:22:27 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						c4f3936d98 
					 
					
						
						
							
							[idd] helper: split CWindow into base class and CNotifyWindow  
						
						
						
						
					 
					
						2025-09-15 09:22:27 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						19989ce9fb 
					 
					
						
						
							
							[idd] helper: add icon context menu with log directory open  
						
						
						
						
					 
					
						2025-09-15 01:38:13 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						e1a2fa790d 
					 
					
						
						
							
							[idd] debug: use better log path determination algorithm  
						
						
						
						
					 
					
						2025-09-14 06:23:13 -04:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						daa78bcf47 
					 
					
						
						
							
							[idd] debug: full Unicode handling and log as UTF-8  
						
						... 
						
						
						
						This commit makes `CDebug` use Unicode internally instead of whatever
random code page is in use. It also gets rid of the horrible character
counting and replaces that with `vasprintf` and `vaswprintf` helpers
(partially inspired by Linux) which allocates a buffer.
For HRESULT logging, the error code in both hex and decimal are included.
The output is now guaranteed to be UTF-8. 
						
						
					 
					
						2025-09-14 20:00:25 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						e2bc1856b6 
					 
					
						
						
							
							[idd] install: add missing io.h include  
						
						
						
						
					 
					
						2025-09-14 19:44:50 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						30869c1c9c 
					 
					
						
						
							
							[idd] debug: log to C:\ProgramData\Looking Glass (IDD)  
						
						
						
						
					 
					
						2025-09-14 17:18:44 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						9e8cb2f919 
					 
					
						
						
							
							[idd] install: allow unicode errors  
						
						
						
						
					 
					
						2025-09-14 17:18:10 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						70e0c356fc 
					 
					
						
						
							
							[idd] common/debug: add UTC timestamp and raw error code to logs  
						
						
						
						
					 
					
						2025-09-14 17:17:56 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						8c3a2d01bc 
					 
					
						
						
							
							[idd] helper/PipeClient: use event and async I/O to interrupt read  
						
						... 
						
						
						
						An event, `m_signal`, is created and signalled when either `m_running` or
`m_connected` is changed by another thread, so that the pipe thread knows
to interrupt the read.
The pipe is now opened as async to allow interruption, and the I/O
operations now use overlapped I/O.
Other changes include:
* Changing `m_pipe` to `HandleT<HANDLETraits>` since `CreateFile` returns
  `INVALID_HANDLE_VALUE` instead of `NULL` on error.
* Remove the call to `WaitNamedPipeA` because it's useless and returns
  immediately without waiting if the pipe doesn't exist. 
						
						
					 
					
						2025-09-14 17:17:21 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						eff8555f9b 
					 
					
						
						
							
							[idd] helper: wait on parent process directly  
						
						
						
						
					 
					
						2025-09-14 17:16:23 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						c873aa4c4e 
					 
					
						
						
							
							[idd] helper: use separate log for child process  
						
						
						
						
					 
					
						2025-09-14 17:16:23 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						5c1d604a22 
					 
					
						
						
							
							[idd] helper: correctly pump message and destroy window  
						
						
						
						
					 
					
						2025-09-14 17:16:23 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						67e1574d20 
					 
					
						
						
							
							[idd] helper: add notification icon  
						
						
						
						
					 
					
						2025-09-14 09:49:39 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						94550e09b4 
					 
					
						
						
							
							[idd] helper: use CWindow helper to avoid global state  
						
						
						
						
					 
					
						2025-09-14 09:49:39 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						9d48e70983 
					 
					
						
						
							
							[idd] helper: switch to fully Unicode to avoid encoding issues  
						
						
						
						
					 
					
						2025-09-14 09:49:39 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						48dc7a90f9 
					 
					
						
						
							
							[idd] installer: use icon embedded in LGIddHelper.exe  
						
						
						
						
					 
					
						2025-09-14 09:49:39 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						4ff5ce02d7 
					 
					
						
						
							
							[idd] helper: add icon to resource  
						
						
						
						
					 
					
						2025-09-14 09:49:39 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						d5ee54e23e 
					 
					
						
						
							
							[idd] install: use CreateWellKnownSid  
						
						
						
						
					 
					
						2025-09-13 19:49:39 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						41d3e7a981 
					 
					
						
						
							
							[idd] install: rework error handling for ensureKeyWithAce  
						
						... 
						
						
						
						Also avoid weird allocators like LocalAlloc in favour of malloc. 
						
						
					 
					
						2025-09-13 19:33:53 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						e75c7cff46 
					 
					
						
						
							
							[idd] install: call ensureKeyWithAce once and fail properly  
						
						
						
						
					 
					
						2025-09-13 19:10:57 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						e81462176a 
					 
					
						
						
							
							[idd] installer: update help text  
						
						... 
						
						
						
						Also rename /driver to /ivshmem since this is a driver package. 
						
						
					 
					
						2025-09-13 14:53:22 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						d00f12875c 
					 
					
						
						
							
							[idd] installer: dont make the reg key owned by USER MODE DRIVERS  
						
						... 
						
						
						
						Windows 11 does not allow the key to be owned by USER MODE DRIVERS
granting the user control via the ACL should resolve this 
						
						
					 
					
						2025-09-13 14:34:04 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						b6ceb72855 
					 
					
						
						
							
							[idd] driver: cleanup duplicated string constant  
						
						
						
						
					 
					
						2025-09-13 14:08:33 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						13ae3441cf 
					 
					
						
						
							
							[idd] driver: move the ExtraMode registry key now permissions are correct  
						
						... 
						
						
						
						This resolves the problem of this setting being essentially lost
between driver upgrades. 
						
						
					 
					
						2025-09-13 14:08:33 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						b83d70a068 
					 
					
						
						
							
							[idd] installer: create the IDD registry key for the driver  
						
						... 
						
						
						
						The driver runs under the account `NT AUTHORITY\USER MODE DRIVERS`
and as a result requires the key to be owned by this user so that
it is able to write to it. 
						
						
					 
					
						2025-09-13 14:08:33 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						2d28d27e90 
					 
					
						
						
							
							Revert idd reg changes due to missing nsis support  
						
						
						
						
					 
					
						2025-09-13 11:21:48 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						e6b3b7fa76 
					 
					
						
						
							
							[idd] nsis: add missed includes  
						
						
						
						
					 
					
						2025-09-13 11:13:21 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						9220c85e85 
					 
					
						
						
							
							[idd] nsis: fix syntax error in if statements  
						
						
						
						
					 
					
						2025-09-13 11:09:58 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						2c370847e7 
					 
					
						
						
							
							[idd] nsis: create a registry key the driver can write to  
						
						
						
						
					 
					
						2025-09-13 11:06:01 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						e1170f8e01 
					 
					
						
						
							
							[idd] installer: fix copy pasta from host installer  
						
						
						
						
					 
					
						2025-09-13 10:39:55 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						41d2210624 
					 
					
						
						
							
							[idd] installer: add option to disable old host application  
						
						
						
						
					 
					
						2025-09-13 10:39:39 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						ff8650829c 
					 
					
						
						
							
							[idd] install: create NSIS installer script  
						
						
						
						
					 
					
						2025-09-13 00:32:00 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						df6d22455e 
					 
					
						
						
							
							[idd] install: copy executable to staging directory  
						
						
						
						
					 
					
						2025-09-12 22:53:14 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						52849bc1d7 
					 
					
						
						
							
							[idd] all: delete ARM and ARM64 targets  
						
						
						
						
					 
					
						2025-09-12 22:36:10 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						155540a8f7 
					 
					
						
						
							
							[idd] install: create new driver installer/uninstaller  
						
						
						
						
					 
					
						2025-09-12 18:54:33 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						6e00dedc2b 
					 
					
						
						
							
							[idd] helper: enable per-monitor DPI awareness  
						
						
						
						
					 
					
						2025-09-11 18:45:43 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						e816847fb1 
					 
					
						
						
							
							[idd] all: use UTF-8 source code  
						
						
						
						
					 
					
						2025-09-11 17:00:35 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						08064efb7f 
					 
					
						
						
							
							[idd] driver: fix failure to track last pointer ID  
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	build / client (Debug, map[cc:clang cxx:clang++], libdecor) (push) Has been cancelled 
				
			 
		
			
				
	build / client (Debug, map[cc:clang cxx:clang++], xdg-shell) (push) Has been cancelled 
				
			 
		
			
				
	build / client (Debug, map[cc:gcc cxx:g++], libdecor) (push) Has been cancelled 
				
			 
		
			
				
	build / client (Debug, map[cc:gcc cxx:g++], xdg-shell) (push) Has been cancelled 
				
			 
		
			
				
	build / client (Release, map[cc:clang cxx:clang++], libdecor) (push) Has been cancelled 
				
			 
		
			
				
	build / client (Release, map[cc:clang cxx:clang++], xdg-shell) (push) Has been cancelled 
				
			 
		
			
				
	build / client (Release, map[cc:gcc cxx:g++], libdecor) (push) Has been cancelled 
				
			 
		
			
				
	build / client (Release, map[cc:gcc cxx:g++], xdg-shell) (push) Has been cancelled 
				
			 
		
			
				
	build / module (push) Has been cancelled 
				
			 
		
			
				
	build / host-linux (push) Has been cancelled 
				
			 
		
			
				
	build / host-windows-cross (push) Has been cancelled 
				
			 
		
			
				
	build / host-windows-native (push) Has been cancelled 
				
			 
		
			
				
	build / obs (clang) (push) Has been cancelled 
				
			 
		
			
				
	build / obs (gcc) (push) Has been cancelled 
				
			 
		
			
				
	build / docs (push) Has been cancelled 
				
			 
		
		
	 
 
	 
						
						
					 
					
						2025-09-07 20:28:55 +00:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						0feaa716c5 
					 
					
						
						
							
							[idd] helper: implement enable/disable priv  
						
						... 
						
						
						
						Implements `EnablePriv` and `DisablePriv` so the helper can now
interact with the desktop. Fixes issues with setting cursor position 
						
						
					 
					
						2025-09-07 13:07:15 +00:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						2a2250b9bd 
					 
					
						
						
							
							[idd] driver: added files missed in the last commit  
						
						
						
						
					 
					
						2025-08-30 18:08:53 +00:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						16a283717a 
					 
					
						
						
							
							[idd] driver; support custom resolution and refresh rate list  
						
						... 
						
						
						
						Custom modes can now be configured via the registry under
HKEY_LOCAL_MACHINE\SOFTWARE\LookingGlass\IDD
Create the value "Modes" as a REG_MULTI_SZ with the value as
a list of modes, for example:
1024x768@60
1920x1080@60
1920x1080@120*
The '*' denotes the preferred mode to default to if one has not
been selected by the user. 
						
						
					 
					
						2025-08-30 18:02:55 +00:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						5a4a2529af 
					 
					
						
						
							
							[idd] driver: remove static EDID  
						
						... 
						
						
						
						We do not need this as we are configuring the avialable modes directly 
						
						
					 
					
						2025-08-30 14:13:53 +00:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						403bf87d6d 
					 
					
						
						
							
							[idd] driver: ignore failure due to normal operation  
						
						... 
						
						
						
						If the screen is blanked or removed through a user action
`IddCxMonitorQueryHardwareCursor` will return with a failure. This
is normal and we should not log this as an error. 
						
						
					 
					
						2025-08-30 13:05:28 +00:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						e1a585ad6f 
					 
					
						
						
							
							[idd] driver: relocate the HW cursor thread into CSwapChainProcessor  
						
						... 
						
						
						
						It is invalid to call `IddCxMonitorSetupHardwareCursor` before
`IddCxSwapChainSetDevice`. This fixes this by moving the thread into
CSwapChainProcessor and starting it after `IddCxSwapChainSetDevice`
has succeeded. 
						
						
					 
					
						2025-08-30 11:56:30 +00:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						11c86273d2 
					 
					
						
						
							
							[idd] driver: correct reported stride  
						
						
						
						
					 
					
						2025-08-29 15:53:42 +10:00