Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								1dbcfdaf81 
								
							 
						 
						
							
							
								
								render/gles2: remove gles2_procs  
							
							 
							
							... 
							
							
							
							Move the global into wlr_gles2_renderer. This removes global state and
allows us to have multiple renderers with different GL loaders. 
							
						 
						
							2020-07-28 06:59:07 -06:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								62da61716f 
								
							 
						 
						
							
							
								
								render/gles2: make push/pop debug functions take a wlr_renderer  
							
							 
							
							
							
						 
						
							2020-07-28 06:59:07 -06:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								26af316b3b 
								
							 
						 
						
							
							
								
								render/gles2: make wlr_gles2_texture_from_* private  
							
							 
							
							... 
							
							
							
							These functions are unused by compositors (see e.g. [1]) and prevent
wlr_gles2_texture from accessing wlr_gles2_renderer state. This is an
issue for proper teardown [2] and for accessing GLES2 extensions.
[1]: https://github.com/swaywm/wlroots/pull/1962#issuecomment-569511830 
[2]: https://github.com/swaywm/wlroots/pull/1962  
							
						 
						
							2020-07-28 06:59:07 -06:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Andri Yngvason 
								
							 
						 
						
							
							
							
							
								
							
							
								e05a85327f 
								
							 
						 
						
							
							
								
								render: gles2: Fix y-inversion in gles2_blit_dmabuf()  
							
							 
							
							
							
						 
						
							2020-07-01 11:43:02 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Zeni 
								
							 
						 
						
							
							
							
							
								
							
							
								4a4da256dd 
								
							 
						 
						
							
							
								
								render/gles2: use glGetAttribLocation instead of hardcoded indices  
							
							 
							
							
							
						 
						
							2020-06-24 20:01:19 +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  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Andri Yngvason 
								
							 
						 
						
							
							
							
							
								
							
							
								78d6eed6b3 
								
							 
						 
						
							
							
								
								render: Fix blit_dmabuf() breakage due to API change  
							
							 
							
							
							
						 
						
							2020-06-08 21:37:32 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Andri Yngvason 
								
							 
						 
						
							
							
							
							
								
							
							
								b64a8a7f98 
								
							 
						 
						
							
							
								
								render: Add wlr_renderer_blit_dmabuf()  
							
							 
							
							
							
						 
						
							2020-06-08 20:49:41 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								e91417ea8d 
								
							 
						 
						
							
							
								
								render: stop making EGL context current in wlr_egl_init  
							
							 
							
							... 
							
							
							
							This leaves an EGL context current behind. wlr_gles2_renderer_create was
assuming the EGL context was already current because of this (because it
called a GL function right off the bat). 
							
						 
						
							2020-06-02 14:23:24 -06:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								1edc42157b 
								
							 
						 
						
							
							
								
								render/egl: introduce wlr_egl_unset_current  
							
							 
							
							... 
							
							
							
							This function can be called after wlr_egl_make_current to cleanup the
EGL context. This avoids having lingering EGL contexts that make things
work by chance.
Closes: https://github.com/swaywm/wlroots/issues/2197  
							
						 
						
							2020-05-19 14:56:20 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								5dc3a9c754 
								
							 
						 
						
							
							
								
								render/gles2: add wlr_gles2_renderer_check_ext  
							
							 
							
							
							
						 
						
							2020-04-22 22:40:54 +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  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								4a1015faff 
								
							 
						 
						
							
							
								
								render/gles2: only call wlr_egl_bind_display if supported  
							
							 
							
							... 
							
							
							
							This allows us to hard-fail if the extension is advertised but we fail
to enable it. 
							
						 
						
							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 
								
							 
						 
						
							
							
							
							
								
							
							
								6d3f3b9300 
								
							 
						 
						
							
							
								
								render/gles2: unbind textures after use  
							
							 
							
							... 
							
							
							
							Keeping textures bound results in hard-to-debug situations where some GL
operations incorrectly affect the texture. 
							
						 
						
							2020-01-13 07:52:30 -07:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								515679e4fe 
								
							 
						 
						
							
							
								
								Refactor EGL/GL API loading  
							
							 
							
							... 
							
							
							
							Remove glapi.sh code generation, replace it with hand-written loading
code that checks extension strings before calling eglGetProcAddress.
The GLES2 renderer still uses global state because of:
- {PUSH,POP}_GLES2_DEBUG macros
- wlr_gles2_texture_from_* taking a wlr_egl instead of the renderer 
							
						 
						
							2019-12-20 01:03:34 +00:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Ronan Pigott 
								
							 
						 
						
							
							
							
							
								
							
							
								5df606d8ab 
								
							 
						 
						
							
							
								
								render/gles2: do not set GL_TEXTURE_MAG_FILTER  
							
							 
							
							
							
						 
						
							2019-11-26 09:42:10 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Drew DeVault 
								
							 
						 
						
							
							
							
							
								
							
							
								4c9423278a 
								
							 
						 
						
							
							
								
								Introduce wlr_renderer_get_egl  
							
							 
							
							
							
						 
						
							2019-11-11 19:10:10 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Scott Anderson 
								
							 
						 
						
							
							
							
							
								
							
							
								85a2ee6d30 
								
							 
						 
						
							
							
								
								render/gles: Simplify textures a bit  
							
							 
							
							... 
							
							
							
							We don't need our own enum for types. Instead we just use
GL_TEXTURE_{2D,EXTERNAL_OES}, which already describes usage.
Also fixes a situation where we were using GL_TEXTURE_2D in a situation
we should not have. wl_drm buffers are always GL_TEXTURE_EXTERNAL_OES,
no matter if they're RGB or any other format. 
							
						 
						
							2019-11-06 09:46:01 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Filip Sandborg 
								
							 
						 
						
							
							
							
							
								
							
							
								734c64a6cc 
								
							 
						 
						
							
							
								
								render/gles2: fix calculation for partial gles2 pixel read ( #1809 )  
							
							 
							
							
							
						 
						
							2019-08-31 23:00:52 +03:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Simon Ser 
								
							 
						 
						
							
							
							
							
								
							
							
								107a1789ea 
								
							 
						 
						
							
							
								
								render/gles2: print GL_RENDERER  
							
							 
							
							... 
							
							
							
							This is often the name of the GPU and can help debugging graphics issues. 
							
						 
						
							2019-05-07 10:51:52 -06:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								e42178d03f 
								
							 
						 
						
							
							
								
								render: switch wlr_renderer to wlr_drm_format_set  
							
							 
							
							
							
						 
						
							2019-04-01 19:18:04 +03:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									emersion 
								
							 
						 
						
							
							
							
							
								
							
							
								5445d8aad0 
								
							 
						 
						
							
							
								
								meson: enable more compiler warnings  
							
							 
							
							
							
						 
						
							2019-03-01 09:20:23 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Timidger 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								9af0c5338f 
								
							 
						 
						
							
							
								
								Standardize the wlr_box input paramaters  
							
							 
							
							... 
							
							
							
							Fixes  #1094  
							
						 
						
							2018-12-21 13:56:10 -05:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								d592dcdedd 
								
							 
						 
						
							
							
								
								render/gles2: check for GL_OES_EGL_image_external  
							
							 
							
							
							
						 
						
							2018-11-04 09:00:55 +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  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Mariusz Bialonczyk 
								
							 
						 
						
							
							
							
							
								
							
							
								ad406db21c 
								
							 
						 
						
							
							
								
								gles2: change context when it is not current  
							
							 
							
							... 
							
							
							
							Texture functions, that create and manipulate textures should switch
the current context if necessary.
thanks to: @emersion
Fixes  #934  
							
						 
						
							2018-08-03 07:43:22 +02:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Drew DeVault 
								
							 
						 
						
							
							
							
							
								
							
							
								b902c2bd7c 
								
							 
						 
						
							
							
								
								Revert "Move side-effect out of assert statement"  
							
							 
							
							... 
							
							
							
							This reverts commit a0afedcd8f . 
							
						 
						
							2018-07-13 15:46:54 -04:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Drew DeVault 
								
							 
						 
						
							
							
							
							
								
							
							
								a0afedcd8f 
								
							 
						 
						
							
							
								
								Move side-effect out of assert statement  
							
							 
							
							
							
						 
						
							2018-07-13 13:54:09 -04:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								7cbef15206 
								
							 
						 
						
							
							
								
								util: add wlr_ prefix to log symbols  
							
							 
							
							
							
						 
						
							2018-07-09 22:49:54 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								cc9b198f9e 
								
							 
						 
						
							
							
								
								render/gles2: ditch extra parens  
							
							 
							
							
							
						 
						
							2018-06-30 23:19:02 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								bf7560b7cd 
								
							 
						 
						
							
							
								
								screencopy: add capture_output_region support  
							
							 
							
							
							
						 
						
							2018-06-30 22:18:04 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								2b9cbaddf3 
								
							 
						 
						
							
							
								
								screencopy: add support for frame flags  
							
							 
							
							
							
						 
						
							2018-06-30 22:18:03 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									NeKit 
								
							 
						 
						
							
							
							
							
								
							
							
								6f29db1044 
								
							 
						 
						
							
							
								
								gles2 renderer: introduce struct wlr_gles2_tex_shader  
							
							 
							
							
							
						 
						
							2018-06-13 13:43:01 +03:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									NeKit 
								
							 
						 
						
							
							
							
							
								
							
							
								de91c55ea9 
								
							 
						 
						
							
							
								
								Fix GLES2 renderer to use glGetUniformLocations locations  
							
							 
							
							... 
							
							
							
							This is needed as uniform locations are driver implementation-specific. 
							
						 
						
							2018-06-07 18:06:31 +03:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								6b7a55aa3d 
								
							 
						 
						
							
							
								
								Merge pull request  #1020  from emersion/remove-check-dmabuf  
							
							 
							
							... 
							
							
							
							render: remove wlr_renderer_check_import_dmabuf 
							
						 
						
							2018-05-31 21:49:57 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Genki Sky 
								
							 
						 
						
							
							
							
							
								
							
							
								d1cf9acbd5 
								
							 
						 
						
							
							
								
								cleanup: Use void for zero-parameter functions  
							
							 
							
							... 
							
							
							
							Signed-off-by: Genki Sky <sky@genki.is> 
							
						 
						
							2018-05-30 20:19:16 -04: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 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								41130fe54b 
								
							 
						 
						
							
							
								
								render: bind wl_drm in renderer  
							
							 
							
							
							
						 
						
							2018-05-21 19:07:08 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Ilia Bozhinov 
								
							 
						 
						
							
							
							
							
								
							
							
								47ffd0e184 
								
							 
						 
						
							
							
								
								gles2: pre-multiply alpha and fix blending function  
							
							 
							
							
							
						 
						
							2018-05-18 20:34:36 +03:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								71ca45e2c0 
								
							 
						 
						
							
							
								
								Make sure we don't use others' prefixes  
							
							 
							
							
							
						 
						
							2018-04-25 23:24:58 +01:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								1b802d9251 
								
							 
						 
						
							
							
								
								Make wlr_renderer_scissor take normal coords instead of upside-down ones  
							
							 
							
							
							
						 
						
							2018-04-12 19:38:33 -04:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								d2ebbd103c 
								
							 
						 
						
							
							
								
								backend: remove wlr_backend_get_egl  
							
							 
							
							
							
						 
						
							2018-04-08 11:00:56 -04:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								f3f61bed3e 
								
							 
						 
						
							
							
								
								Untie wlr_gles2_renderer and wlr_gles2_texture  
							
							 
							
							
							
						 
						
							2018-04-01 16:07:50 -04:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								33a2eb4b77 
								
							 
						 
						
							
							
								
								Untie wlr_backend from wlr_renderer  
							
							 
							
							
							
						 
						
							2018-03-31 18:49:43 -04:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Drew DeVault 
								
							 
						 
						
							
							
							
							
								
							
							
								23d357e371 
								
							 
						 
						
							
							
								
								Downgrade gles2 messages to L_DEBUG  
							
							 
							
							... 
							
							
							
							L_INFO is for stuff that's useful to the user 
							
						 
						
							2018-03-31 00:27:30 -04:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Orestis Floros 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								c9ed6fed59 
								
							 
						 
						
							
							
								
								Fix build error with -O2  
							
							 
							
							... 
							
							
							
							../render/gles2/renderer.c: In function ‘gles2_render_texture_with_matrix’:
../render/gles2/renderer.c:140:2: error: ‘target’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
  glBindTexture(target, tex_id);
  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../render/gles2/renderer.c:145:2: error: ‘prog’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
  glUseProgram(prog); 
							
						 
						
							2018-03-31 01:05:33 +03:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									Tony Crisci 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								330ee08126 
								
							 
						 
						
							
							
								
								Merge pull request  #744  from emersion/texture-redesign  
							
							 
							
							... 
							
							
							
							Redesign wlr_texture 
							
						 
						
							2018-03-28 00:14:57 -04:00  
						
						
							 
							
							
							
								 
							 
							
							
								 
							 
							
						 
					 
				
					
						
							
								
								
									 
									emersion 
								
							 
						 
						
							
							
								
								
							
							
							
								
							
							
								c42fd1018b 
								
							 
						 
						
							
							
								
								render: remove GL calls from wlr_egl  
							
							 
							
							
							
						 
						
							2018-03-27 17:02:48 -04:00