Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						29698362ed 
					 
					
						
						
							
							[client] x11: added request activation support  
						
						
						
						
					 
					
						2022-02-10 20:20:34 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						f24db8d0cd 
					 
					
						
						
							
							Revert "[client] x11: check if the EWMH atoms exist before using them"  
						
						... 
						
						
						
						This reverts commit cfd2e6ff32 
						
						
					 
					
						2022-02-10 13:36:40 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						cfd2e6ff32 
					 
					
						
						
							
							[client] x11: check if the EWMH atoms exist before using them  
						
						
						
						
					 
					
						2022-02-10 13:35:19 +11:00 
						 
				 
			
				
					
						
							
							
								Netboy3 
							
						 
					 
					
						
						
							
						
						e0c0451b52 
					 
					
						
						
							
							[client] x11: Add inline icon  
						
						... 
						
						
						
						Many X11 window managers will present an application on their
taskbar as a combination of the application name and an icon
imagery pulled from the X-Property _NET_WM_ICON. Applications
built under frameworks such as Qt or GTK have this property
populated by the framework. This commit adds the Atom _NET_WM_ICON
and populates it with a 64x64 icon of Looking Glass. 
						
						
					 
					
						2022-02-09 12:07:55 +11:00 
						 
				 
			
				
					
						
							
							
								Tudor Brindus 
							
						 
					 
					
						
						
							
						
						da548e3858 
					 
					
						
						
							
							[client] ds: expose activation requesting  
						
						
						
						
					 
					
						2022-02-08 14:54:55 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						05e363e009 
					 
					
						
						
							
							[client] x11: cleanup duplicated code  
						
						
						
						
					 
					
						2022-01-26 15:30:38 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						e17b289759 
					 
					
						
						
							
							[client] x11: sync the mouse on meta resize  
						
						
						
						
					 
					
						2022-01-26 14:55:30 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						79e986cc60 
					 
					
						
						
							
							[client] x11: fix failure to unfocus when performing meta resize/move  
						
						
						
						
					 
					
						2022-01-26 14:43:11 +11:00 
						 
				 
			
				
					
						
							
							
								Chris Spencer 
							
						 
					 
					
						
						
							
						
						786a252b23 
					 
					
						
						
							
							[client] x11: don't use primary selection for clipboard  
						
						... 
						
						
						
						This behaviour is more consistent with other applications where text
selections do not influence explicit clipboard operations. 
						
						
					 
					
						2022-01-13 08:18:56 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						952ebea2c5 
					 
					
						
						
							
							[all] refresh copyright dates  
						
						
						
						
					 
					
						2022-01-05 19:42:46 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						ad40ea4195 
					 
					
						
						
							
							[client] x11: don't override the focus state if no EWMH focus support  
						
						
						
						
					 
					
						2021-12-22 11:25:54 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						65948034dd 
					 
					
						
						
							
							[client] x11: be more agressive grabbing the pointer  
						
						
						
						
					 
					
						2021-12-21 21:51:43 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						27c7054505 
					 
					
						
						
							
							[client] x11: protect against msc overflow with jitRender  
						
						
						
						
					 
					
						2021-12-21 10:47:55 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						02b59ba8f7 
					 
					
						
						
							
							[client] x11: don't use the atomic msc value when we already have it  
						
						
						
						
					 
					
						2021-12-21 10:47:11 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						5f80ce91e8 
					 
					
						
						
							
							[client] x11: fix broken grab retry logic  
						
						
						
						
					 
					
						2021-12-15 01:43:09 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						b6fa296d5a 
					 
					
						
						
							
							[client] x11: work around issue with desktop switch on i3  
						
						... 
						
						
						
						For an unknwon reason when LG is on another desktop (hidden) and the
user switches to that desktop, the first attempt to grab the pointer
results in a GrabFrozen result. This adds some simple retry logic to
attempt again after a short (100ms) delay which seems to resolve the
issue. 
						
						
					 
					
						2021-12-15 00:23:44 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						2e170ad06f 
					 
					
						
						
							
							[client] x11: properly detect WMEH support for focus events  
						
						
						
						
					 
					
						2021-12-15 00:17:33 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						88a95aeab0 
					 
					
						
						
							
							[client] x11: fix issue with grab when clicking on the unfocused window  
						
						... 
						
						
						
						Fixes  #856  
					
						2021-12-10 05:27:58 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						9780f51558 
					 
					
						
						
							
							[client] x11: fix failure to set window position correctly when set  
						
						
						
						
					 
					
						2021-11-30 13:04:39 +11:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						9c5e34df0f 
					 
					
						
						
							
							[client] x11: handle EINTR properly in epoll loop  
						
						
						
						
					 
					
						2021-10-20 15:40:50 +11:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						12840a8324 
					 
					
						
						
							
							[client] x11: load glXSwapIntervalEXT dynamically  
						
						... 
						
						
						
						The Linux OpenGL ABI does not guarantee that glXSwapIntervalEXT will be
exported statically from any library, and indeed on some systems this
function does not link at load time, e.g. with amdgpu-pro. All other
GLX functions that we use are from GLX 1.0, which is guaranteed to be
exported statically.
This commit solves this issue by using glXGetProcAddressARB to load the
function. Note that only the ARB version of glXGetProcAddress is
guaranteed to exist by the Linux OpenGL ABI, which is why we must use
it. 
						
						
					 
					
						2021-09-29 17:47:36 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						ab3738624f 
					 
					
						
						
							
							[client] x11: reduce the scope of deltats  
						
						
						
						
					 
					
						2021-09-11 10:11:00 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						25ed3632f7 
					 
					
						
						
							
							[client] x11: remove dead code  
						
						
						
						
					 
					
						2021-09-11 10:06:52 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						4b3a79c110 
					 
					
						
						
							
							[client] x11: remove print from debugging  
						
						
						
						
					 
					
						2021-08-19 21:35:54 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						2d470b8deb 
					 
					
						
						
							
							[client] x11: filter out virtual/grabbed XIEnterEvents  
						
						
						
						
					 
					
						2021-08-19 21:29:03 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						1021c9ce92 
					 
					
						
						
							
							[client] x11: implement keyboard modifiers  
						
						
						
						
					 
					
						2021-08-19 21:28:21 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						ce3f11fd40 
					 
					
						
						
							
							[client] x11: implement keyboard typing  
						
						
						
						
					 
					
						2021-08-19 21:28:21 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						81c38e825c 
					 
					
						
						
							
							[client] remove all casts around malloc  
						
						... 
						
						
						
						The cast is unnecessary in C and should be removed to avoid clutter. 
						
						
					 
					
						2021-08-16 16:26:58 +10:00 
						 
				 
			
				
					
						
							
							
								Tudor Brindus 
							
						 
					 
					
						
						
							
						
						14ad83c6b8 
					 
					
						
						
							
							[client] use variable-relative sizeof where possible  
						
						
						
						
					 
					
						2021-08-16 16:22:55 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						1128eb0e84 
					 
					
						
						
							
							[client] x11: don't hang when there are no message pending  
						
						
						
						
					 
					
						2021-08-10 01:47:03 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						1fd726eed7 
					 
					
						
						
							
							[client] x11: be less sensitive to frame skips  
						
						... 
						
						
						
						External events like launching other applications can cause latency
spikes while X11 initializes the application, we should only start
adjusting our delay if we see excessive skips over a 1s period. 
						
						
					 
					
						2021-08-09 15:51:01 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						bc7e59c9d7 
					 
					
						
						
							
							[client] x11: prevent present event loop underruns  
						
						... 
						
						
						
						Queue up and maintain a list of presentation timestamps to avoid spikes
caused by X11 event processing latency. 
						
						
					 
					
						2021-08-09 15:24:12 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						179eaef29d 
					 
					
						
						
							
							[client] x11: switch to epoll for event wait loop  
						
						
						
						
					 
					
						2021-08-09 15:23:44 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						64da3465b8 
					 
					
						
						
							
							[client] x11: invalidate the full window after timeout from expose  
						
						... 
						
						
						
						Invalidating the entire window on an Expose event causes poor WM
performance when dragging the window around. Instead flag to redraw and
wait for the expose events to stop for 100ms before doing it. 
						
						
					 
					
						2021-08-08 08:49:46 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						3e08e7aafa 
					 
					
						
						
							
							[client] x11: prevent skew from enter/leave/focus and fullscreen events  
						
						
						
						
					 
					
						2021-08-07 03:49:32 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						ec56b2760a 
					 
					
						
						
							
							[client] x11: don't allow window manager events to skew cal timing  
						
						
						
						
					 
					
						2021-08-07 03:39:11 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						ad256e0b00 
					 
					
						
						
							
							[client] x11: improve presentation sync calibration  
						
						
						
						
					 
					
						2021-08-07 02:36:11 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						0603a55492 
					 
					
						
						
							
							[client] x11: prevent possible calibration underflow  
						
						
						
						
					 
					
						2021-08-05 07:11:23 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						6e7f39edee 
					 
					
						
						
							
							[client] app: allow selective full invalidation  
						
						... 
						
						
						
						Overlays only need to trigger a new frame if they have changed and not
full window invalidation, this change allows for this. 
						
						
					 
					
						2021-08-05 06:47:36 +10:00 
						 
				 
			
				
					
						
							
							
								Quantum 
							
						 
					 
					
						
						
							
						
						51b9cd4e5a 
					 
					
						
						
							
							[all] copyright: use unicode copyright sign ©  
						
						... 
						
						
						
						This is done for consistency with the license strings in appstrings.c. 
						
						
					 
					
						2021-08-04 21:16:35 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						c15d0dc672 
					 
					
						
						
							
							[client] ds: waitFrame now returns a bool to force rendering if needed  
						
						... 
						
						
						
						X11 needs to calibrate to get the best possible latency, as such it
needs the scene to render so that the render time of the scene can be
accounted for in the delay calculation. 
						
						
					 
					
						2021-08-04 06:49:35 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						0f7fa32d12 
					 
					
						
						
							
							[client] x11: move sleep and calibration code outside of the event loop  
						
						... 
						
						
						
						Sleeping in the x11 event loop is not ideal as it will introduce latency
when processing other events, instead do this in the waitFrame handler. 
						
						
					 
					
						2021-08-04 06:34:27 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						6933c278ce 
					 
					
						
						
							
							[client] x11: cosmetics  
						
						
						
						
					 
					
						2021-08-04 06:14:27 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						7fc717a839 
					 
					
						
						
							
							[client] x11: don't setup XPresent if jitRender is not enabled  
						
						
						
						
					 
					
						2021-08-04 06:12:21 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						03ed8b7304 
					 
					
						
						
							
							[client] x11: added code to calibrate a delay for presentation  
						
						... 
						
						
						
						XPresent doesn't give us the time before presentation, but the time just
after. This code calculates and calibrates a delay to sleep for before
signaling the wait event for render when using jitRender 
						
						
					 
					
						2021-08-03 07:51:03 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						504bf02855 
					 
					
						
						
							
							[client] x11: provide an empty rect region to XPresentPixmap  
						
						... 
						
						
						
						Providing None informs the comppositor that there is full screen damage,
instead we provide an empty rectangle to prevent this behaviour. 
						
						
					 
					
						2021-08-03 07:49:59 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						50f9baedba 
					 
					
						
						
							
							[client] x11: remove junk code from evaluation  
						
						
						
						
					 
					
						2021-08-03 01:11:46 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						891ee3e789 
					 
					
						
						
							
							[client] x11: make use of the x11 present extension for jitRender  
						
						... 
						
						
						
						This implementation is a bit dodgy and needs some work but is currently
functional. Consider this feature highly experiemental under X11. 
						
						
					 
					
						2021-08-02 23:59:26 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						5e2dd589a1 
					 
					
						
						
							
							[client] x11: implement cursor support for the imgui overlay  
						
						... 
						
						
						
						This commit adds libxcursor to the dependencies for X11. 
						
						
					 
					
						2021-07-31 18:23:05 +10:00 
						 
				 
			
				
					
						
							
							
								Geoffrey McRae 
							
						 
					 
					
						
						
							
						
						3143dc1e84 
					 
					
						
						
							
							[client] x11: call app_handleWheelMotion for imgui scroll interaction  
						
						
						
						
					 
					
						2021-07-31 16:12:52 +10:00