90d08f8f1c 
								
							
								 
							
						 
						
							
							
								
								wlr_drm_format: Rework wlr_drm_format_intersect  
							
							... 
							
							
 
							
							Now it takes a reference to a destination format 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								340700cb70 
								
							
								 
							
						 
						
							
							
								
								wlr_drm_format: Change wlr_drm_format_dup to copy  
							
							
 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								099a147439 
								
							
								 
							
						 
						
							
							
								
								wlr_drm_format: Change wlr_drm_format_create to init  
							
							
 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								e427e019c4 
								
							
								 
							
						 
						
							
							
								
								wlr_drm_format: Don't take double pointer in wlr_drm_format_add  
							
							
 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								e6879616e7 
								
							
								 
							
						 
						
							
							
								
								wlr_drm_format: Make structure constant length  
							
							... 
							
							
 
							
							Don't store modifiers as part of the struct. 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								84d07e7119 
								
							
								 
							
						 
						
							
							
								
								wlr_drm_format_set: Remove redundant text in comment for finish function  
							
							... 
							
							
 
							
							This is implied by the fact that this function finishes the state instead
of destroying it. 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								b45396c790 
								
							
								 
							
						 
						
							
							
								
								wlr_drm_format: Introduce drm_format_finish  
							
							
 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								e353c5c631 
								
							
								 
							
						 
						
							
							
								
								render/vulkan: enable NV12 on big-endian  
							
							... 
							
							
 
							
							This format doesn't change its layout on big endian because it's
not packed and has 8-bit channels. 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								2a1234a820 
								
							
								 
							
						 
						
							
							
								
								wlr-export-dmabuf-v1: handle output destroy  
							
							... 
							
							
 
							
							We were storing a wlr_output without listening for the destroy
event.
Closes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3646  
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								095a63a11c 
								
							
								 
							
						 
						
							
							
								
								render/vulkan: improve logging when creating texture  
							
							... 
							
							
 
							
							Remove debug logs when a texture is created, since this happens
pretty often. Use drmGetFormatName() and drmGetFormatModifierName()
to log DRM formats and modifiers. 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								18139f4d87 
								
							
								 
							
						 
						
							
							
								
								wlr_cursor: Don't multiply hotspot by scale^2  
							
							... 
							
							
 
							
							We are already multiplying in output_cursor_set_texture 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								2c30500ce1 
								
							
								 
							
						 
						
							
							
								
								backend/drm: fix di_info memory leak  
							
							
 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								47a250ae12 
								
							
								 
							
						 
						
							
							
								
								wlr_cursor: Consider surface state when setting new cursor surface  
							
							... 
							
							
 
							
							Found by inspection 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								e6fc5d1e49 
								
							
								 
							
						 
						
							
							
								
								render/vulkan: increase next descriptor pool size  
							
							... 
							
							
 
							
							This ensures that the pool sizes grow exponentially, making the number
of pools needed logarithmic in the number of descriptors, instead of
linear. Since the first pool's size is 256, this change only has an
effect when the compositor creates a large number of textures. 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								d933f5204b 
								
							
								 
							
						 
						
							
							
								
								output: drop wlr_output_cursor_set_surface  
							
							
 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								78afce5e2d 
								
							
								 
							
						 
						
							
							
								
								cursor: add surface handling  
							
							... 
							
							
 
							
							Only rely on wlr_output_cursor_set_texture(), because
wlr_output_cursor_set_surface() will get dropped. 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								b64e7e88bf 
								
							
								 
							
						 
						
							
							
								
								output: add output_cursor_set_texture()  
							
							
 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								b03f71fe5f 
								
							
								 
							
						 
						
							
							
								
								render/vulkan: add support for NV12  
							
							
 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								5adb1be3a7 
								
							
								 
							
						 
						
							
							
								
								drm_format_set_intersect: Require initialized dst and remove assert  
							
							... 
							
							
 
							
							The usages in linux_dmabuf zero out the dst before passing it so this
change should be fine. 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								1ee75786b4 
								
							
								 
							
						 
						
							
							
								
								drm_format_set_union: Require initialized dst and remove assert  
							
							
 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								d7917d2076 
								
							
								 
							
						 
						
							
							
								
								xwayland: allow compositor to set withdrawn state  
							
							
 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								2827ec6b7b 
								
							
								 
							
						 
						
							
							
								
								xwayland: enable use of a xserver subproject  
							
							... 
							
							
 
							
							Makes it easier to work on Xwayland and wlroots features in
parallel.
References: https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1048  
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								403eac51c4 
								
							
								 
							
						 
						
							
							
								
								render/vulkan: fix code style for function brackets  
							
							
 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								ec796afb6e 
								
							
								 
							
						 
						
							
							
								
								wlr_compositor: Decide opacity from new has_buffer flag.  
							
							... 
							
							
 
							
							`wlr_surface_get_texture` will always return NULL if the compositor was
not given a renderer. 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								394accbe4a 
								
							
								 
							
						 
						
							
							
								
								wlr_compositer: Keep track if surface has committed a buffer before.  
							
							... 
							
							
 
							
							This would break if you are running with a NULL renderer. 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								2dd9549085 
								
							
								 
							
						 
						
							
							
								
								drm_format_set: Mark as unstable  
							
							... 
							
							
 
							
							This is supposed to be an unstable interface and it was a mistake that
this header was not included. 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								cbe8876050 
								
							
								 
							
						 
						
							
							
								
								linux_dmabuf_v1: Use wlr_drm_format_set_union  
							
							
 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								ec37d55a5e 
								
							
								 
							
						 
						
							
							
								
								Add union function for format sets  
							
							
 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								bf8ae8a036 
								
							
								 
							
						 
						
							
							
								
								output/cursor: fix buffer size when nested and scaled  
							
							... 
							
							
 
							
							The Wayland, X11 and headless backends don't really care about the
cursor size. We were picking a size identical to the texture size
in that case. This is incorrect for LoDPI cursor textures on HiDPI
outputs: in that case, we need to scale up the cursor texture.
Fixes the cursor being chopped off under the Wayland backend with
scale > 1. 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								a93fc8afd6 
								
							
								 
							
						 
						
							
							
								
								render: introduce blend mode  
							
							... 
							
							
 
							
							Allow callers to pick the blend mode when rendering a rect. The
"none" mode can be used to disable blending and clear rects. 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								6b7d1d732a 
								
							
								 
							
						 
						
							
							
								
								render/pixman: fix scaling in render_pass_add_texture()  
							
							... 
							
							
 
							
							Closes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3642 
Fixes: 6830bfc17f 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								d5320e5f20 
								
							
								 
							
						 
						
							
							
								
								tinywl: Release everything before destroy  
							
							... 
							
							
 
							
							This makes -Db_sanatize=address happy. 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								f5a5712a02 
								
							
								 
							
						 
						
							
							
								
								render/vulkan: use VK_KHR_synchronization2  
							
							... 
							
							
 
							
							This simplifies the vkQueueSubmit call, removing the need to pass
timeline semaphore point values as separate arrays. 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								6830bfc17f 
								
							
								 
							
						 
						
							
							
								
								render/pixman: implement render pass API  
							
							
 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								6ce371a317 
								
							
								 
							
						 
						
							
							
								
								render/pixman: add begin_pixman_data_ptr_access()  
							
							... 
							
							
 
							
							This logic is used twice. 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								d7fcc1e96f 
								
							
								 
							
						 
						
							
							
								
								scene: port to wlr_render_pass  
							
							
 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								587852056c 
								
							
								 
							
						 
						
							
							
								
								output: add wlr_output_add_software_cursors_to_render_pass()  
							
							... 
							
							
 
							
							Same as wlr_output_render_software_cursors(), but takes a
struct wlr_render_pass. 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								471249ae4f 
								
							
								 
							
						 
						
							
							
								
								render/pass: add legacy render pass implementation  
							
							... 
							
							
 
							
							Add a render pass implementation which leverages the legacy
rendering API. This is helpful during the migration. 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								4a1ad32534 
								
							
								 
							
						 
						
							
							
								
								render: add render pass helpers  
							
							
 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								756dedae20 
								
							
								 
							
						 
						
							
							
								
								Add a new renderer API  
							
							... 
							
							
 
							
							Goals:
- Extensibility: we need to be able to add new params to the calls
  to render a texture/rect. For instance we'll need to add fences to
  the render texture operation for explicit sync purposes.
- No implicit state: no more bind_buffer, begin, end.
- No matrices: these hurt Pixman and we don't need them.
- Clip regions for optimized damage repainting.
Closes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3188  
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								17ad034480 
								
							
								 
							
						 
						
							
							
								
								xcursor: Resolve warning in xcursor_build_theme_dir  
							
							... 
							
							
 
							
							Signed-off-by: Edgars Cīrulis <edgarsscirulis@gmail.com> 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								56502be1d1 
								
							
								 
							
						 
						
							
							
								
								backend/x11: prevent segfault on empty DRI3 response  
							
							
 
							
						 
						
							4 years ago  
				
					
						
							
							
								 
						
							
							
								44069dfd5e 
								
							
								 
							
						 
						
							
							
								
								output-layer: add cropping support  
							
							... 
							
							
 
							
							Add a src_box state field. Use the SRC_* KMS props in the DRM
backend, reject the layers in the Wayland backend (for now, we can
support it later via viewporter). 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								d795824346 
								
							
								 
							
						 
						
							
							
								
								render/vulkan: fix signedness of strcmp() return value  
							
							... 
							
							
 
							
							strcmp() returns a signed integer. 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								62e60ba889 
								
							
								 
							
						 
						
							
							
								
								render/vulkan: use initializer in vulkan_change_layout_queue()  
							
							
 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								74e8fd8a9a 
								
							
								 
							
						 
						
							
							
								
								render/vulkan: remove extra newline  
							
							
 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								92b726ef67 
								
							
								 
							
						 
						
							
							
								
								render/vulkan: use full names for extension command fields  
							
							... 
							
							
 
							
							This makes grepping much easier. 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								25d9055281 
								
							
								 
							
						 
						
							
							
								
								xcursor: sync with libwayland  
							
							... 
							
							
 
							
							xcursor.c was copied over from libwayland-cursor. A lot of
cosmetic imporvements have been merged upstream. Copy-paste the
new version. 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								00489b11a0 
								
							
								 
							
						 
						
							
							
								
								seat: Provide dummy resources for inert seats  
							
							
 
							
						 
						
							3 years ago  
				
					
						
							
							
								 
						
							
							
								3898bb482d 
								
							
								 
							
						 
						
							
							
								
								seat: Let client manage its own resources  
							
							... 
							
							
 
							
							This makes seat_client resources inert when seats and/or input devices are
destroyed, rather than destroying the resources.
When the client calls e.g. wl_keyboard_release(), it's not expecting the
keyboard global to be already destroyed, so this results in an error such
as this:
    wl_display@1: error 0: invalid object 22 
							
						 
						
							3 years ago