Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						8974ae4fb5 
					 
					
						
						
							
							[client] add SVG loading support and use icons for status display  
						
						... 
						
						
						
						This brings nanosvg into the project for SVG loading and rendering.
Unfortunatly we can not at this time use a submodule for this project
until https://github.com/memononen/nanosvg/pull/214  is merged. 
						
						
					 
					
						2022-05-26 04:11:31 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						8aa36144dc 
					 
					
						
						
							
							overlay: move init/free to the context of the render thread  
						
						... 
						
						
						
						This is done to allow overlays to make use of the renderer during
init/free. 
						
						
					 
					
						2022-05-26 00:46:13 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						faae785c44 
					 
					
						
						
							
							[client] spice: initialize new surfaces to black  
						
						
						
						
					 
					
						2022-05-24 00:17:08 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						b5dfbcb5a2 
					 
					
						
						
							
							[client] egl: added missing case from texture init  
						
						
						
						
					 
					
						2022-05-23 20:55:02 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						247e867f18 
					 
					
						
						
							
							[client] egl: implemented SPICE display support  
						
						
						
						
					 
					
						2022-05-22 18:19:58 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						6699018ed1 
					 
					
						
						
							
							[client] egl: check for null before free  
						
						
						
						
					 
					
						2022-05-22 12:05:02 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						947db38bc9 
					 
					
						
						
							
							[client] egl: fix mistake in rect clamping  
						
						
						
						
					 
					
						2022-05-22 11:53:46 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						1fcdcc8725 
					 
					
						
						
							
							[client] egl: allow for partial texture updates  
						
						
						
						
					 
					
						2022-05-21 21:21:16 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						2901e7aec5 
					 
					
						
						
							
							[client] egl: only upload the damage rects if they actually changed  
						
						... 
						
						
						
						Profiling shows that a considerable amount of time is spent in
glBindBuffer and glBufferSubData when the damage rects are updated.
Since the amount of data here is quite small it's far faster to check if
it's different then to just blindly overwrite the buffer on each call.
Profiled on an Intel CPU with UHD P630 Graphics using magic-trace 
						
						
					 
					
						2022-05-17 00:51:13 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						6afd262a27 
					 
					
						
						
							
							[client] egl: update AMD FSR to 1.0.2  
						
						
						
						
					 
					
						2022-05-04 15:29:21 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						eae559b4c9 
					 
					
						
						
							
							[client/obs] update to support downscaled frames coming from the host  
						
						
						
						
					 
					
						2022-05-01 19:51:25 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						3a8cb6a613 
					 
					
						
						
							
							[client/common] fixes for issues detected through static analysis.  
						
						
						
						
					 
					
						2022-03-07 10:14:52 +11:00 
						 
				 
			
				
					
						
							
							
								Paul Hollinsky 
							
						 
					 
					
						
						
							
						
						3890c72159 
					 
					
						
						
							
							[client] egl: use texture sampler for desktop  
						
						... 
						
						
						
						The desktop doesn't need its own sampler, there is already an identically
configured one in the `desktop->texture`.
For some reason, using the texture sampler fixes a black screen issue
with my GTX 660 using the 470.86 driver. Maybe hitting some limit
for how many samplers can be allocated? 
						
						
					 
					
						2022-02-08 15:34:54 +11:00 
						 
				 
			
				
					
						
							
							
								Paul Hollinsky 
							
						 
					 
					
						
						
							
						
						4223a5e38f 
					 
					
						
						
							
							[client] egl: remove extra sampler from TextureBuffer  
						
						... 
						
						
						
						It was unused, there is a sampler in EGL_Texture (base). 
						
						
					 
					
						2022-02-08 15:34:54 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						b0568ca404 
					 
					
						
						
							
							[client] egl: use a sigmoid curve for nv  
						
						
						
						
					 
					
						2022-01-26 23:03:35 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						fb4bdaee2b 
					 
					
						
						
							
							[client] egl: set the active preset if specified at launch  
						
						
						
						
					 
					
						2022-01-26 16:07:17 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						c7389285f9 
					 
					
						
						
							
							[client] egl: fix null pointer access when no preset is set  
						
						
						
						
					 
					
						2022-01-26 16:04:15 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						aa426d13a7 
					 
					
						
						
							
							[client] egl: added egl:preset to load a default preset at startup  
						
						
						
						
					 
					
						2022-01-26 16:00:07 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						89c83dafc1 
					 
					
						
						
							
							[client] egl: make egl less noisy unless debug is specified  
						
						
						
						
					 
					
						2022-01-26 15:42:33 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						22f3cf5ba6 
					 
					
						
						
							
							[client] egl: fix masked color cursor blend operation for xor drawing  
						
						
						
						
					 
					
						2022-01-26 12:23:05 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						3067bdaa15 
					 
					
						
						
							
							[client] egl: properly apply xor mask to masked color cursors  
						
						
						
						
					 
					
						2022-01-26 12:11:43 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						96fa8891c8 
					 
					
						
						
							
							[client] egl: fixed incorrect drawing of masked color cursors  
						
						
						
						
					 
					
						2022-01-24 06:56:32 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						9a6aa3ce66 
					 
					
						
						
							
							[client] egl: remove duplicate #include "app.h"  
						
						
						
						
					 
					
						2022-01-23 08:49:15 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						464fee3e20 
					 
					
						
						
							
							[client] overlay/graphs: allow the graph to have a custom title format  
						
						
						
						
					 
					
						2022-01-17 22:08:56 +11:00 
						 
				 
			
				
					
						
							
							
								Chris Spencer 
							
						 
					 
					
						
						
							
						
						f635077a2c 
					 
					
						
						
							
							[client] egl: increase texture processing timeout  
						
						... 
						
						
						
						On my machine (Intel UHD Graphics 770), texture processing occasionally
(about 5% of the time) takes more than 20ms (the highest I have seen is
around 32ms) when the host resolution is 2560x1440. This results in the
frame being discarded and the client displays a stale image. Increase the
timeout to 40ms. 
						
						
					 
					
						2022-01-14 12:31:02 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						6bba9bc25d 
					 
					
						
						
							
							[client/common] move ll from the client into the common code module  
						
						
						
						
					 
					
						2022-01-12 12:22:18 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						1851002fc1 
					 
					
						
						
							
							[client] all: remove ll_walk and migrate over to ll_forEachNL  
						
						
						
						
					 
					
						2022-01-12 12:17:29 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						ec0bd6adc8 
					 
					
						
						
							
							[client] imgui: update to cimgui 1.86  
						
						
						
						
					 
					
						2022-01-08 00:26:12 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						952ebea2c5 
					 
					
						
						
							
							[all] refresh copyright dates  
						
						
						
						
					 
					
						2022-01-05 19:42:46 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						d708651c53 
					 
					
						
						
							
							[client] egl: check for null gl strings  
						
						
						
						
					 
					
						2022-01-05 12:38:38 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						35efa551ef 
					 
					
						
						
							
							[client] egl: determine mouse scale using both horiz and vert size  
						
						
						
						
					 
					
						2021-12-28 19:04:24 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						136737f25b 
					 
					
						
						
							
							[client] egl: simplify EGL torus code  
						
						
						
						
					 
					
						2021-12-28 10:19:36 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						d69069fb09 
					 
					
						
						
							
							[client] egl: keep the mouse cursor 1:1 when downscaling  
						
						... 
						
						
						
						This keeps the cursor a usable size when the guest is running a high
resolution and downscaling (ie, 4K -> FHD). 
						
						
					 
					
						2021-12-26 11:08:42 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						adbe333414 
					 
					
						
						
							
							[client] egl: dmabuf can be used without GL_EXT_buffer_storage support  
						
						
						
						
					 
					
						2021-12-15 06:10:30 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						15066c7345 
					 
					
						
						
							
							[client] egl: handle eglQuerySurface(EGL_BUFFER_AGE_EXT) error  
						
						
						
						
					 
					
						2021-12-14 14:35:30 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						58f83da7bb 
					 
					
						
						
							
							[client] egl: increase the damage box for the cursor  
						
						
						
						
					 
					
						2021-12-02 22:07:37 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						3e9a21d3b9 
					 
					
						
						
							
							[client] egl: use linear filter when not scaling  
						
						... 
						
						
						
						This appears to eliminate artifacts related to non-full screen paints
due to precision errors with the nearest filter. 
						
						
					 
					
						2021-12-02 22:07:24 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						8167ef2c4a 
					 
					
						
						
							
							[client] egl: make use of glsl's textureSize function  
						
						
						
						
					 
					
						2021-11-12 07:41:59 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						67ea8e06ba 
					 
					
						
						
							
							[client] egl: use alloca instead of typecasted char array  
						
						
						
						
					 
					
						2021-10-24 22:57:21 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						ad6e3f96e6 
					 
					
						
						
							
							[client] egl: reset damage on renderer restart  
						
						
						
						
					 
					
						2021-10-23 18:38:21 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						fe712b7ec9 
					 
					
						
						
							
							[client] egl: damage the full screen if the frame format changes  
						
						
						
						
					 
					
						2021-10-22 18:51:49 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						dca5da02a0 
					 
					
						
						
							
							[client] egl: fix undefined behaviour with zero size array  
						
						
						
						
					 
					
						2021-10-20 13:34:16 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						2858ad3f7e 
					 
					
						
						
							
							[client] egl: fallback when EGL_RENDER_BUFFER fails  
						
						... 
						
						
						
						This allows the client to work when the OpenGL implementation fails if
EGL_RENDER_BUFFER is passed, printing a warning. This should fix issues
with Nvidia proprietary drivers on Wayland. 
						
						
					 
					
						2021-10-20 11:31:00 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						9ddd260b22 
					 
					
						
						
							
							[client] egl: log glCheckFramebufferStatus error  
						
						
						
						
					 
					
						2021-10-20 11:30:40 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						bc34dc9e24 
					 
					
						
						
							
							[client] egl: blame NVIDIA if dmabuf fails on NVIDIA hardware  
						
						... 
						
						
						
						NVIDIA still do not implement a complete/working DMABUF implementation
yet advertise support. Best to tell the public to complain to NVIDIA
instead of assuming it's a LG bug or an issue with their system. 
						
						
					 
					
						2021-10-20 11:28:29 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						edc9825c04 
					 
					
						
						
							
							[client] egl: check for invalid desktop render dimensions  
						
						
						
						
					 
					
						2021-10-20 11:17:29 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						70a751b58d 
					 
					
						
						
							
							[client] egl/filters: bypass setup/prepare logic if disabled/inactive  
						
						... 
						
						
						
						filters are now not run if `egl_filterSetup` returns false, as such we
do not need additional `enable` checks in `prepare` or `run` and we can
bypass the filters even earlier if they are not enabled reducing load. 
						
						
					 
					
						2021-10-20 10:57:53 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						fc037ccc95 
					 
					
						
						
							
							[client] egl: handle filter setup returning false  
						
						... 
						
						
						
						As discussed, this should just skip the filter as if it's disabled. 
						
						
					 
					
						2021-10-20 10:48:18 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						74418106de 
					 
					
						
						
							
							[client] egl: skip downscale filter setup when not enabled  
						
						... 
						
						
						
						Since this->prepared will never be set to true unless the filter is
enabled, this results in the framebuffer setup being done every frame
for no reason, causing a lot of texture reallocations. 
						
						
					 
					
						2021-10-20 10:47:59 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						8dcf7af791 
					 
					
						
						
							
							[client] egl: fix parentheses in IDX_AGO definition  
						
						... 
						
						
						
						The old definition could break if complex expressions were passed in
as arguments. 
						
						
					 
					
						2021-10-17 06:10:30 +11:00