Brandon Dowdy 
								
							 
						 
						
							
							
							
							
								
							
							
								8aa38fe73e 
								
							 
						 
						
							
							
								
								render/egl: remove *config_attribs and wlr_egl->config  
							
							... 
							
							
							
							Breaking changes:
Both "EGLint *config_attribs" and "wlr_egl->config" no longer exist. 
							
						 
						
							2021-01-29 10:03:24 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								7c995b78b2 
								
							 
						 
						
							
							
								
								Revert "render: add wlr_egl_create_from_drm_fd function"  
							
							... 
							
							
							
							This reverts commit ee31be167b 
							
						 
						
							2021-01-20 21:32:50 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								54e5ef39c0 
								
							 
						 
						
							
							
								
								Revert "render/egl: remove unused gbm_device member"  
							
							... 
							
							
							
							This reverts commit 306cf11d87 
							
						 
						
							2021-01-20 21:32:50 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Simon Zeni 
								
							 
						 
						
							
							
							
							
								
							
							
								306cf11d87 
								
							 
						 
						
							
							
								
								render/egl: remove unused gbm_device member  
							
							
							
						 
						
							2021-01-20 15:29:00 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Simon Zeni 
								
							 
						 
						
							
							
							
							
								
							
							
								ee31be167b 
								
							 
						 
						
							
							
								
								render: add wlr_egl_create_from_drm_fd function  
							
							
							
						 
						
							2021-01-20 15:29:00 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								2f11914613 
								
							 
						 
						
							
							
								
								render: introduce private wlr_renderer_autocreate_with_drm_fd  
							
							
							
						 
						
							2021-01-16 22:52:26 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Simon Zeni 
								
							 
						 
						
							
							
							
							
								
							
							
								e128e6c08d 
								
							 
						 
						
							
							
								
								render: drop egl parameters from wlr_renderer_autocreate  
							
							
							
						 
						
							2021-01-16 08:57:42 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								1d461687d2 
								
							 
						 
						
							
							
								
								render/egl: replace init/finish with create/destroy  
							
							... 
							
							
							
							This ensures wlr_gles2_renderer can properly take ownership of the
wlr_egl.
Closes: https://github.com/swaywm/wlroots/issues/2612  
							
						 
						
							2021-01-12 11:31:04 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								76ed2255ef 
								
							 
						 
						
							
							
								
								render/egl: remove support for EGL_NATIVE_VISUAL_ID  
							
							... 
							
							
							
							Nobody uses it anymore. 
							
						 
						
							2021-01-12 11:31:04 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Simon Zeni 
								
							 
						 
						
							
							
							
							
								
							
							
								b899a412e3 
								
							 
						 
						
							
							
								
								backend: remove wlr_egl from all backends  
							
							
							
						 
						
							2021-01-07 17:11:22 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								07d75c99db 
								
							 
						 
						
							
							
								
								render: remove EGL config and visual from wlr_renderer_autocreate  
							
							... 
							
							
							
							This isn't used anymore by any backend.
Some examples still provide an EGL config to wlr_egl_init, so we can't
drop it yet there. 
							
						 
						
							2021-01-06 12:05:51 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Simon Ser 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								b9460ab724 
								
							 
						 
						
							
							
								
								Stop using wlr_texture_get_size  
							
							... 
							
							
							
							Just use wlr_texture.{width,height} directly. 
							
						 
						
							2020-12-25 12:21:29 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								037710b1d4 
								
							 
						 
						
							
							
								
								render/egl: support config-less wlr_egl  
							
							... 
							
							
							
							When using wlr_swapchain, there's no need to select an EGLConfig. Add
support for creating config-less EGL contexts. 
							
						 
						
							2020-12-07 11:40:45 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								1f15dd093d 
								
							 
						 
						
							
							
								
								render: assert {X,A}RGB8888 are supported  
							
							... 
							
							
							
							The Wayland protocol requires those to be supported. 
							
						 
						
							2020-11-30 11:08:44 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								c94ab99ae2 
								
							 
						 
						
							
							
								
								render: rename wlr_renderer_get_formats  
							
							... 
							
							
							
							Rename wlr_renderer_get_formats to wlr_renderer_get_shm_texture_formats.
This makes it clear those formats are only suitable for shm import. 
							
						 
						
							2020-11-30 11:08:44 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								49115e9d5d 
								
							 
						 
						
							
							
								
								render: rename wlr_renderer_get_dmabuf_formats  
							
							... 
							
							
							
							Rename wlr_renderer_get_dmabuf_formats to
wlr_renderer_get_dmabuf_texture_formats. This makes it clear the formats
are only suitable for creating wlr_textures. 
							
						 
						
							2020-11-30 11:08:44 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								5d008d9030 
								
							 
						 
						
							
							
								
								render: introduce wlr_renderer_get_dmabuf_render_formats  
							
							... 
							
							
							
							It describes which DMA-BUF formats can be used to render. 
							
						 
						
							2020-11-30 11:08:44 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								61612ecb36 
								
							 
						 
						
							
							
								
								render: remove wlr_renderer_format_supported  
							
							... 
							
							
							
							Instead, callers can just use wlr_renderer_get_formats and iterate over
the list.
This function was unused in wlroots. 
							
						 
						
							2020-11-30 11:08:44 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								eb8360bda3 
								
							 
						 
						
							
							
								
								render: introduce wlr_renderer_get_drm_fd  
							
							
							
						 
						
							2020-11-15 22:54:07 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								c88c54fb38 
								
							 
						 
						
							
							
								
								render: introduce wlr_renderer_bind_buffer  
							
							
							
						 
						
							2020-11-15 22:48:42 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Isaac Freund 
								
							 
						 
						
							
							
							
							
								
							
							
								0724b3c453 
								
							 
						 
						
							
							
								
								Use uint32_t in wlr_renderer_begin signature  
							
							... 
							
							
							
							This matches the signature of wlr_renderer_impl.begin 
							
						 
						
							2020-11-11 11:01:46 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Guido Cella 
								
							 
						 
						
							
							
							
							
								
							
							
								6949d0fd38 
								
							 
						 
						
							
							
								
								render: Don't crash on 0 dimensions  
							
							... 
							
							
							
							Don't force compositors to check when an empty shape is being renderered.
References #2282 . This was motivated by dwl crashing when setting window
borders to 0 (djpohly/dwl#51 ). 
							
						 
						
							2020-08-27 17:39:31 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								315bf08733 
								
							 
						 
						
							
							
								
								render: add wlr_render_subtexture_with_matrix  
							
							... 
							
							
							
							This renders only a subset of the texture, instead of the full texture. 
							
						 
						
							2020-06-17 09:10:54 -06:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Rouven Czerwinski 
								
							 
						 
						
							
							
							
							
								
							
							
								d3d1bac1c2 
								
							 
						 
						
							
							
								
								render: assert sane values for box functions  
							
							... 
							
							
							
							Width and height should always be > 0 for render functions which take a
wlr_box.
References https://github.com/swaywm/wlroots/issues/2281  
							
						 
						
							2020-06-16 15:16:02 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Andri Yngvason 
								
							 
						 
						
							
							
							
							
								
							
							
								b64a8a7f98 
								
							 
						 
						
							
							
								
								render: Add wlr_renderer_blit_dmabuf()  
							
							
							
						 
						
							2020-06-08 20:49:41 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								d10f8a98ec 
								
							 
						 
						
							
							
								
								render: only expose linux-dmabuf if EGL extension is supported  
							
							... 
							
							
							
							Only expose linux-dmabuf extension if EGL_EXT_image_dmabuf_import_ext is
supported.
Closes: https://github.com/swaywm/wlroots/issues/2076  
							
						 
						
							2020-04-09 00:16:03 +00:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Isaac Freund 
								
							 
						 
						
							
							
							
							
								
							
							
								c682d97841 
								
							 
						 
						
							
							
								
								Return failure of wlr_renderer_init_wl_display()  
							
							... 
							
							
							
							This makes it easier for the user of this library to properly handle
failure of this function.
The signature of wlr_renderer_impl.init_wl_display was also modified to
allow for proper error propagation. 
							
						 
						
							2020-03-23 15:19:16 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								346b43e937 
								
							 
						 
						
							
							
								
								render: guard rendering operations between begin() and end()  
							
							... 
							
							
							
							Add a wlr_renderer.rendering bool, set it to true between
wlr_renderer_begin() and wlr_renderer_end(). Assert we're rendering when
calling functions that render. 
							
						 
						
							2019-12-31 08:07:44 -07:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								e42178d03f 
								
							 
						 
						
							
							
								
								render: switch wlr_renderer to wlr_drm_format_set  
							
							
							
						 
						
							2019-04-01 19:18:04 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ilia Bozhinov 
								
							 
						 
						
							
							
							
							
								
							
							
								fb5691b6cc 
								
							 
						 
						
							
							
								
								output: add wlr_output_preferred_read_format()  
							
							... 
							
							
							
							The read format is dependent on the output, so we first need to make it
current. This fixes a race condition in wlr-screencopy-v1 where a dmabuf
client would cause EGL_NO_SURFACE to be bound at the time when
screencopy needs to query for the preferred format, causing GL errors. 
							
						 
						
							2018-11-24 10:54:25 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								09550032b7 
								
							 
						 
						
							
							
								
								render: correctly set EGL_RENDERABLE_TYPE  
							
							... 
							
							
							
							This should be set to EGL_OPENGL_ES2_BIT.
Also fixes EGL config attributes in the headless and X11 backends. 
							
						 
						
							2018-11-10 13:20:54 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								62d646f2b8 
								
							 
						 
						
							
							
								
								render/gles2: remove assumptions about supported formats  
							
							... 
							
							
							
							We were assuming GL_BGRA_EXT was always supported.
We now check that it's supported for rendering. We fail if it isn't because
this format is specified as "always supported" by the Wayland protocol.
We also check if it's supported for reading pixels. A new preferred_read_format
function returns the preferred format that can be used to read pixels. This is
used by the screencopy protocol. 
							
						 
						
							2018-11-04 09:00:51 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									emersion 
								
							 
						 
						
							
							
							
							
								
							
							
								2f0815838d 
								
							 
						 
						
							
							
								
								Init dmabuf global in renderer  
							
							
							
						 
						
							2018-09-02 08:50:43 +02:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								7cbef15206 
								
							 
						 
						
							
							
								
								util: add wlr_ prefix to log symbols  
							
							
							
						 
						
							2018-07-09 22:49:54 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								2b9cbaddf3 
								
							 
						 
						
							
							
								
								screencopy: add support for frame flags  
							
							
							
						 
						
							2018-06-30 22:18:03 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Dominique Martinet 
								
							 
						 
						
							
							
							
							
								
							
							
								4cc4412481 
								
							 
						 
						
							
							
								
								wlr_renderer_destroy: fix renderer NULL check  
							
							... 
							
							
							
							renderer is checked for NULL, but was dereferenced before that.
Found through static analysis 
							
						 
						
							2018-06-30 11:38:21 +09:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								135721118a 
								
							 
						 
						
							
							
								
								render: remove wlr_renderer_check_import_dmabuf  
							
							... 
							
							
							
							It's possible to implement it outside the renderer, by creating a
texture and destroying it right away. This reduces the API surface
of the renderer. 
							
						 
						
							2018-05-30 17:08:15 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								28020ff577 
								
							 
						 
						
							
							
								
								Only allow one modifier per DMA-BUF, split attributes struct in render/  
							
							
							
						 
						
							2018-05-30 09:29:12 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								6eb4b5b54d 
								
							 
						 
						
							
							
								
								Merge pull request  #993  from emersion/bind-wl-drm-in-renderer  
							
							... 
							
							
							
							render: bind wl_drm in renderer 
							
						 
						
							2018-05-25 13:54:16 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Ilia Bozhinov 
								
							 
						 
						
							
							
							
							
								
							
							
								24cf70ae96 
								
							 
						 
						
							
							
								
								backends: implement custom EGL and renderer initialization  
							
							... 
							
							
							
							Compositors now have more control over how the backend creates its
renderer. Currently all backends create an EGL/GLES2 renderer, so
the necessary attributes for creating the context are passed to a
user-provided callback function. It is responsible for initializing
provided wlr_egl and to return a renderer. On fail, return 0.
Fixes  #987  
							
						 
						
							2018-05-25 14:56:52 +03:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								41130fe54b 
								
							 
						 
						
							
							
								
								render: bind wl_drm in renderer  
							
							
							
						 
						
							2018-05-21 19:07:08 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								449f06556a 
								
							 
						 
						
							
							
								
								Destroy wlr_surface with wlr_renderer  
							
							
							
						 
						
							2018-04-26 00:11:36 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									Rostislav Pehlivanov 
								
							 
						 
						
							
							
							
							
								
							
							
								12298ce88c 
								
							 
						 
						
							
							
								
								Do not advertize *RGB8888 as supported shm formats  
							
							... 
							
							
							
							They're always available and supported, and are added automatically.
Adding them again just duplicates them. 
							
						 
						
							2018-04-21 14:58:25 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								70d820be25 
								
							 
						 
						
							
							
								
								Add wlr_renderer_init_wl_shm to advertize supported renderer formats  
							
							
							
						 
						
							2018-04-20 23:58:30 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								d2ebbd103c 
								
							 
						 
						
							
							
								
								backend: remove wlr_backend_get_egl  
							
							
							
						 
						
							2018-04-08 11:00:56 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								adf4fb08dd 
								
							 
						 
						
							
							
								
								Merge branch 'master' into texture-redesign  
							
							
							
						 
						
							2018-03-26 19:13:13 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								793c3b3047 
								
							 
						 
						
							
							
								
								render: add simple functions to render rectangles and ellipses  
							
							
							
						 
						
							2018-03-26 12:41:51 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								c63d94483b 
								
							 
						 
						
							
							
								
								Redesign wlr_texture  
							
							... 
							
							
							
							- Textures are now immutable (apart from those created from raw
  pixels), no more invalid textures
- Move all wl_drm stuff in wlr_renderer
- Most of wlr_texture fields are now private
- Remove some duplicated DMA-BUF code in the DRM backend
- Add more assertions
- Stride is now always given as bytes rather than pixels
- Drop wl_shm functions
Fun fact: this patch has been written 10,000 meters up in the air. 
							
						 
						
							2018-03-24 23:48:32 -04:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								3581573bdc 
								
							 
						 
						
							
							
								
								render/gles2: make wlr_renderer_begin take viewport size  
							
							... 
							
							
							
							This allows raw GL calls outside wlr_renderer to be removed. 
							
						 
						
							2018-03-21 07:37:09 +01:00 
							
								 
							
							
								 
							
						 
					 
				
					
						
							
								
								
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								95e86e675a 
								
							 
						 
						
							
							
								
								render/gles2: remove global state, use OpenGL debug extension  
							
							
							
						 
						
							2018-03-20 19:14:33 +01:00