00bb1b0f84 
								
							
								 
							
						 
						
							
							
								
								seat/pointer: add support for axis_relative_direction event  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								b80337a8f2 
								
							
								 
							
						 
						
							
							
								
								xdg-shell: assert that configure events carry positive or zero sizes  
							
							... 
							
							
 
							
							Negative values here would indicate a compositor bug. For xdg_popup,
zero values are not allowed. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								be1c48cbfb 
								
							
								 
							
						 
						
							
							
								
								layer-shell: forbid set_size with values ≥INT32_MAX  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								0b090c83fb 
								
							
								 
							
						 
						
							
							
								
								single-pixel-buffer: send wl_buffer.release  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								58bb49a00b 
								
							
								 
							
						 
						
							
							
								
								security-context-v1: fix possible leaks on wl_client_create() and state copying errors  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								7129eaa1f2 
								
							
								 
							
						 
						
							
							
								
								keyboard: fix type of wlr_keyboard_modifiers.group  
							
							... 
							
							
 
							
							This isn't a breaking change since both of these typedefs are uint32_t
but this should make things a bit less confusing for readers. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								a0b1329ee6 
								
							
								 
							
						 
						
							
							
								
								Fix bool return types  
							
							... 
							
							
 
							
							This makes wlroots build in C23 mode.
C23 is more strict and rejects implicit conversions from bool to a
pointer. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								ab924064f2 
								
							
								 
							
						 
						
							
							
								
								scene: drop wlr_scene_set_presentation()  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								d68ba9d6c2 
								
							
								 
							
						 
						
							
							
								
								presentation-time: drop wlr_presentation arg  
							
							... 
							
							
 
							
							There can only be a single presentation-time global advertised to
clients, this it's unnecessary to pass around the wlr_presentation
pointer. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								1968ada213 
								
							
								 
							
						 
						
							
							
								
								tearing-control-v1: synchronize state with surface  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								0ea6b6e2cc 
								
							
								 
							
						 
						
							
							
								
								session-lock-v1: use wlr_surface_synced  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								aa32d1a127 
								
							
								 
							
						 
						
							
							
								
								session-lock-v1: drop negative buffer size checks  
							
							... 
							
							
 
							
							The buffer size will never be negative, and the negative checks
are distracting from the real checks here. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								dc3b2b9439 
								
							
								 
							
						 
						
							
							
								
								content-type-v1: use wlr_surface_synced  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								90e12fb978 
								
							
								 
							
						 
						
							
							
								
								pointer-constraints-v1: use wlr_surface_synced  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								a6122c3ec5 
								
							
								 
							
						 
						
							
							
								
								layer-shell-v1: use wlr_surface_synced  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								0e3d2222c2 
								
							
								 
							
						 
						
							
							
								
								xdg-decoration: use wlr_surface_synced for toplevel  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								96aec06b0a 
								
							
								 
							
						 
						
							
							
								
								subcompositor: use wlr_surface_synced  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								1c3c24825f 
								
							
								 
							
						 
						
							
							
								
								presentation-time: use wlr_surface_synced  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								4b3553409a 
								
							
								 
							
						 
						
							
							
								
								xdg-shell: use wlr_surface_synced for popups  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								9201431c29 
								
							
								 
							
						 
						
							
							
								
								xdg-shell: use wlr_surface_synced for toplevel  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								69d9a4e2cb 
								
							
								 
							
						 
						
							
							
								
								xdg-shell: use wlr_surface_synced for wlr_xdg_surface  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								7e1ae5548c 
								
							
								 
							
						 
						
							
							
								
								compositor: add wlr_surface_role.client_commit  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								d847516765 
								
							
								 
							
						 
						
							
							
								
								compositor: add wlr_surface_synced  
							
							... 
							
							
 
							
							A lot of protocols extend the wl_surface state. Such protocols need
to synchronize their extended state with wl_surface.commit and
cached states. Add a new utility for this purpose. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								34d5af4172 
								
							
								 
							
						 
						
							
							
								
								compositor: add wlr_surface_state_has_buffer()  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								66b6c349e7 
								
							
								 
							
						 
						
							
							
								
								compositor: remove unnecessary wlr_surface.has_buffer  
							
							... 
							
							
 
							
							No need to store this bit, we can infer it from buffer_width and
buffer_height. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								cd157a0bd9 
								
							
								 
							
						 
						
							
							
								
								compositor: adjust surface_state_move() comment  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								da5f53b461 
								
							
								 
							
						 
						
							
							
								
								pointer-constraints-v1: reset committed on commit  
							
							... 
							
							
 
							
							Knowing which fields changed in the last commit is more useful than
knowing which fields were ever set on the surface. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								85f44f3684 
								
							
								 
							
						 
						
							
							
								
								pointer-constraints-v1: add cursor_hint.enabled  
							
							... 
							
							
 
							
							This allows compositors to check whether the cursor hint is set. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								df27b29d49 
								
							
								 
							
						 
						
							
							
								
								compositor: reset wlr_surface.current.committed on commit  
							
							... 
							
							
 
							
							Knowing which fields changed in the last commit is more useful than
knowing which fields were ever set on the surface. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								11e3c376e7 
								
							
								 
							
						 
						
							
							
								
								output-layout: fix missing global for outputs with a custom mode  
							
							... 
							
							
 
							
							Before we were populating wlr_output.current_mode with a generated
fixed mode when a custom mode was committed in the DRM backend. But
that's no longer the case: now a custom mode behaves the same under
the DRM backend and other backends.
wlr_output_layout was still assuming that an output without a
current_mode was disabled. Fix that assumption.
Fixes: 5567aefb1chttps://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3743  
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								b032161785 
								
							
								 
							
						 
						
							
							
								
								input-method: Simplify resetting of input state  
							
							... 
							
							
 
							
							We have current and pending state and the code uses struct
assignments between them and resets and frees in multiple places.
Introduce a reset() function so we can unify that. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								3bf9000a52 
								
							
								 
							
						 
						
							
							
								
								input-method-v2: validate commit serial  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								6ee5bd9eee 
								
							
								 
							
						 
						
							
							
								
								input-method-v2: free current strings on commit  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								81f5607ad9 
								
							
								 
							
						 
						
							
							
								
								input-method-v2: drop unnecessary variable and cast  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								d7ac8c0cc1 
								
							
								 
							
						 
						
							
							
								
								cursor: drop unnecessary commented code  
							
							... 
							
							
 
							
							This is unused. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								7ef62cc995 
								
							
								 
							
						 
						
							
							
								
								cursor: fix initial cursor position for new outputs  
							
							... 
							
							
 
							
							The fresh new wlr_output_cursor is positioned at (0, 0).
Call wlr_output_cursor_move() after creating the wlr_output_cursor
to fix this.
Closes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3777  
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								3475b1880f 
								
							
								 
							
						 
						
							
							
								
								linux-dmabuf-v1: ignore scanout output for secondary DRM backends  
							
							... 
							
							
 
							
							We don't support direct scanout on such backends yet. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								6a2ff0dffe 
								
							
								 
							
						 
						
							
							
								
								compositor: drop surface precommit event  
							
							... 
							
							
 
							
							This is unused. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								78836298ef 
								
							
								 
							
						 
						
							
							
								
								cursor: send surface scale events  
							
							... 
							
							
 
							
							wlr_cursor is responsible for sending enter/leave events, but
doesn't send fractional-scale-v1 and wl_surface.preferred_buffer_scale
events. This is not an easy thing to do from a compositor, so let's
just do it in wlr_cursor itself. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								6287b61025 
								
							
								 
							
						 
						
							
							
								
								wlr_damage_ring: Fix inverted conditional  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								62169bf5ac 
								
							
								 
							
						 
						
							
							
								
								wlr_scene: fix transformed outputs backend damage clearing  
							
							... 
							
							
 
							
							When we cleared the pending backend damage when the output committed,
we would not take into account the output transform. It's easiest to fix
this by just changing pending_commit_damage to always have transformed
coordinates. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								364d7cba42 
								
							
								 
							
						 
						
							
							
								
								wlr_scene: Apply output damage once  
							
							... 
							
							
 
							
							We would apply it twice if we failed direct scanout. Once when we attempt
direct scanout and again when we composite. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								fe8916fef0 
								
							
								 
							
						 
						
							
							
								
								wlr_scene: Don't damage whole damage ring when exiting direct scanout  
							
							... 
							
							
 
							
							Direct scanout damage will just accumulate on the damage ring while in
direct scanout and properly damage when we exit anyway. On the flip side
since we now manage backend damage submission ourselves, this won't break
that either. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								0619c99dc7 
								
							
								 
							
						 
						
							
							
								
								wlr_scene: Use wlr_damage_ring_rotate_buffer()  
							
							... 
							
							
 
							
							Compositors who use _build_state are no longer required to call
damage_ring_rotate themselves. This is a minor breaking change. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								06d301bf1a 
								
							
								 
							
						 
						
							
							
								
								wlr_scene: Track output damage separately  
							
							... 
							
							
 
							
							The damage ring is only supposed to keep track of damage within
the swapchain 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								3ed1268f64 
								
							
								 
							
						 
						
							
							
								
								render: Nuke old read pixels API  
							
							... 
							
							
 
							
							Sadly, the new API is not backwards compatible with the old API. Since
we have already switched all users in wlroots to the new API compositors
are already practically mandated to implement the new API. Let's get rid
of the old one since there is no point. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								b3575fedbc 
								
							
								 
							
						 
						
							
							
								
								screencopy_v1: Use new read pixels API  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								a165261f7f 
								
							
								 
							
						 
						
							
							
								
								output: replace wlr_render_timer arg with wlr_buffer_pass_options  
							
							... 
							
							
 
							
							This scales better when more render pass options are added. 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								5d639394f3 
								
							
								 
							
						 
						
							
							
								
								types/output: emit destroy event before destroying global  
							
							
 
							
						 
						
							2 years ago  
				
					
						
							
							
								 
						
							
							
								7702a19739 
								
							
								 
							
						 
						
							
							
								
								output: Drop back_buffer  
							
							
 
							
						 
						
							2 years ago