5120addfbb 
								
							
								 
							
						 
						
							
							
								
								data-control: Handle inert seats  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								f97f4496de 
								
							
								 
							
						 
						
							
							
								
								data-device: Handle inert seats  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								0e5f76186e 
								
							
								 
							
						 
						
							
							
								
								seat: Allow binding to inert seats  
							
							... 
							
							
 
							
							If a seat is destroyed while a client is trying to bind it, wlroots
needs to create an inert seat resource instead of crashing. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								52b93f7eb4 
								
							
								 
							
						 
						
							
							
								
								output/cursor: fix scale and transform  
							
							... 
							
							
 
							
							Many issues here:
- wlr_output_cursor_set_buffer() takes a buffer already scaled for
  the output, not a buffer with scale=1.
- wlr_output_cursor.{width,height,hotspot_x,hotspot_y} are in output
  buffer coordinates.
- render_cursor_buffer() had hardcoded no-ops for scale and
  transform, instead of using the cursor surface's.
Fixes: b64e7e88bf 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								09c87cec3f 
								
							
								 
							
						 
						
							
							
								
								cursor: fix wl_pointer.set_cursor hotspot updates  
							
							... 
							
							
 
							
							A client might update the cursor with the same wl_surface as
before, but with a different hotspot. Don't ignore such updates.
Fixes: 9c9e3f6263 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								8c0eeb6a86 
								
							
								 
							
						 
						
							
							
								
								session-lock: fix buffer check  
							
							... 
							
							
 
							
							If the first commit has no buffer, the unmap hook won't catch it. Check
in the commit hook instead. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								e75407fd4d 
								
							
								 
							
						 
						
							
							
								
								session-lock: remove unused wlr_session_lock_surface_v1.events.map  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								17230d33c1 
								
							
								 
							
						 
						
							
							
								
								xwm: check for a buffer before mapping  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								d086ee1b9e 
								
							
								 
							
						 
						
							
							
								
								compositor: remove wlr_surface_role.precommit  
							
							... 
							
							
 
							
							It was previously used to handle unmapping properly but is obsolete now. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								26676c8c07 
								
							
								 
							
						 
						
							
							
								
								xwm: use unified map logic  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								af4181f388 
								
							
								 
							
						 
						
							
							
								
								drag: use unified map logic  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								743da5c0ae 
								
							
								 
							
						 
						
							
							
								
								input-method: use unified map logic  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								229abfae0c 
								
							
								 
							
						 
						
							
							
								
								session-lock: use unified map logic  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								c63f3659c5 
								
							
								 
							
						 
						
							
							
								
								layer-shell: use unified map logic  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								b0437fc416 
								
							
								 
							
						 
						
							
							
								
								xdg-shell: use unified map logic  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								c590bb600f 
								
							
								 
							
						 
						
							
							
								
								subcompositor: use unified map logic  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								6b40e08148 
								
							
								 
							
						 
						
							
							
								
								compositor: introduce unified map logic  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								6668c822b3 
								
							
								 
							
						 
						
							
							
								
								cursor: unset wlr_output_cursor.texture on surface destroy  
							
							... 
							
							
 
							
							When the surface is destroyed, its current wlr_texture is about to
get destroyed as well. Reset wlr_output_cursor.texture to prevent
use-after-free.
Closes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3652  
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								9c9e3f6263 
								
							
								 
							
						 
						
							
							
								
								cursor: ignore wlr_cursor_set_surface() with same surface  
							
							... 
							
							
 
							
							Avoids damaging the output and rendering the cursor again if it
hasn't changed. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								75d03f2b68 
								
							
								 
							
						 
						
							
							
								
								xwm: introduce associate/dissociate events  
							
							... 
							
							
 
							
							We'll soon introduce a unified wlr_surface map event. Up until now, compositors
have been using wlr_xwayland_surface's map event to setup various wlr_surface
related listeners (e.g. commit). This will no longer be possible when that
event is moved over to wlr_surface. Introduce new events where the compositor
can add/remove wlr_surface event listeners. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								2d6a09d9f0 
								
							
								 
							
						 
						
							
							
								
								Revert "xwm: emit new_surface/destroy on associate/dissociate"  
							
							... 
							
							
 
							
							Firing new_surface when a wlr_surface is associated to the X11 window is too
late: the X11 client might've sent configure events before that.
This reverts commit 039cca8a51https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3606  
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								beb820b573 
								
							
								 
							
						 
						
							
							
								
								render/vulkan: improve error handling in vulkan_begin_render_pass()  
							
							... 
							
							
 
							
							Release the command buffer if we end up not submitting it. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								0ba3ea3bcd 
								
							
								 
							
						 
						
							
							
								
								render/vulkan: improve error handling in render_pass_submit()  
							
							... 
							
							
 
							
							Closes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3644  
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								30aca4df0d 
								
							
								 
							
						 
						
							
							
								
								backend/drm: introduce wlr_drm_mode_get_info()  
							
							... 
							
							
 
							
							This allows compositors to get back the raw drmModeModeInfo and
look at DRM-specific fields and flags. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								ba276e5ac2 
								
							
								 
							
						 
						
							
							
								
								render/vulkan: handle vulkan_record_stage_cb() failures  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								3f0487d310 
								
							
								 
							
						 
						
							
							
								
								backend/drm: move forward decl up for drmModeModeInfo  
							
							... 
							
							
 
							
							This allows doc generators to properly associate the doc comment
with the function instead of the typedef. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								5bcd537ff4 
								
							
								 
							
						 
						
							
							
								
								output/cursor: use new rendering API  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								8e81b4bb42 
								
							
								 
							
						 
						
							
							
								
								examples: convert to new rendering API  
							
							... 
							
							
 
							
							Left out multi-pointer (will be removed) and quads (requires
arbitrary rotation). 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								8fe29e6bd1 
								
							
								 
							
						 
						
							
							
								
								backend/drm: use new rendering API  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								93a6acae9f 
								
							
								 
							
						 
						
							
							
								
								output: add wlr_output_begin_render_pass()  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								95062904c7 
								
							
								 
							
						 
						
							
							
								
								wlr_scene: Introduce wlr_scene_buffer_set_opacity  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								2346b90a9f 
								
							
								 
							
						 
						
							
							
								
								wlr_scene: Make scene_rect_from_node public  
							
							... 
							
							
 
							
							This is in an effort to be more consistent with both already public
getters: wlr_scene_buffer_from_node and wlr_scene_tree_from_node 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								88f80c4a7c 
								
							
								 
							
						 
						
							
							
								
								wlr_scene: Make scene_tree_from_node public  
							
							... 
							
							
 
							
							This is to allow for compositors that want to be more implicit about
how their scene is organized. Such a compositor may want to walk up
at a certain scene node to find something such as a surface to focus on. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								61c157269e 
								
							
								 
							
						 
						
							
							
								
								wlr_scene: Add documentation to wlr_scene_buffer_from_node  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								e07c77f846 
								
							
								 
							
						 
						
							
							
								
								render/vulkan: implement render pass API  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								8af00d5534 
								
							
								 
							
						 
						
							
							
								
								renderer/gles2: Implement render pass interface  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								b1d26ed47b 
								
							
								 
							
						 
						
							
							
								
								renderer/gles2: Compute texture coordinates based off of vertex positions  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								45b2a8eee2 
								
							
								 
							
						 
						
							
							
								
								renderer/gles2: Merge get_buffer and create_buffer  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								6f67bfe5ab 
								
							
								 
							
						 
						
							
							
								
								renderer/gles2: Interpret matrix as column major in shader  
							
							... 
							
							
 
							
							Avoids us needing to transpose. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								3de330ec85 
								
							
								 
							
						 
						
							
							
								
								render/vulkan: add 10, 12, and 16-bit YCbCr formats  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								2c6aeed7d6 
								
							
								 
							
						 
						
							
							
								
								output: use pending render format if any  
							
							... 
							
							
 
							
							If a modeset contains a render format change, use that instead of
the current one stored in wlr_output.render_format.
This fixes render_bit_depth configuration not being applied without
a second modeset in Sway. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								28e8d92263 
								
							
								 
							
						 
						
							
							
								
								render/vulkan: document TEXTURE_TRANSFORM_* in shader  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								f60b367db7 
								
							
								 
							
						 
						
							
							
								
								render/vulkan: drop unused vulkan_has_extension()  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								42eec38ab6 
								
							
								 
							
						 
						
							
							
								
								render/vulkan: drop unused vulkan_change_layout_queue()  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								4d634276a4 
								
							
								 
							
						 
						
							
							
								
								render/egl: check for EGL_EXT_device_query in get_egl_device_from_drm_fd()  
							
							... 
							
							
 
							
							We use eglQueryDeviceStringEXT() later on, which is optional and
requires support for the EGL_EXT_device_query extension. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								7099fa2ea4 
								
							
								 
							
						 
						
							
							
								
								render/vulkan: de-dup pipeline layout initialization  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								16dea12dae 
								
							
								 
							
						 
						
							
							
								
								render/vulkan: add more YCbCr formats  
							
							... 
							
							
 
							
							The Vulkan spec states:
> For the purposes of range expansion and Y′CBCR model conversion,
> the R and B components contain color difference (chroma) values
> and the G component contains luma.
The equations below that sentence also help understand the mapping. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								a682fa6c21 
								
							
								 
							
						 
						
							
							
								
								render/vulkan: require support for linear filter for YCbCr  
							
							... 
							
							
 
							
							YCBCR_CONVERSION_LINEAR_FILTER is not enough: this one only covers
chromaFilter. For magFilter/minFilter we need FILTER_LINEAR as well. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								91d469d8c0 
								
							
								 
							
						 
						
							
							
								
								render/vulkan: check format support before creating YCbCr sampler  
							
							... 
							
							
 
							
							We need to check whether the format supports dma_tex_ycbcr_features
before creating the YCbCr sampler. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								c7ae9dfaf8 
								
							
								 
							
						 
						
							
							
								
								render/vulkan: generalize YCbCr format support  
							
							
 
							
						 
						
							2 years ago