75371d2c88 
								
							 
						 
						
							
							
								
								Require libdrm >= 2.4.95  
							
							
							
						 
						
							2019-01-29 19:33:38 +01:00  
				
					
						
							
							
								 
						
							
								ed5296c6cf 
								
							 
						 
						
							
							
								
								Protect against redefining MESA_EGL_NO_X11_HEADERS  
							
							
							
						 
						
							2018-12-22 19:05:19 +01:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								51bfdd620e 
								
							 
						 
						
							
							
								
								Use #if instead of #ifdef for wlroots config data  
							
							... 
							
							
							
							This prevents some annoying issues when e.g. not including wlr/config.h or
making a typo in the guard name. 
							
						 
						
							2018-11-12 10:12:46 +01:00  
				
					
						
							
							
								 
						
							
								beefec3326 
								
							 
						 
						
							
							
								
								Tell Mesa not to attempt X11 headers  
							
							... 
							
							
							
							If no X11 related things are being built, tell Mesa's eglplatform.h not to attempt inclusion of associated X11 header. 
							
						 
						
							2018-11-09 21:25:23 +01:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								b42fc4f2b1 
								
							 
						 
						
							
							
								
								render: on Wayland, make eglSwapBuffers non-blocking  
							
							
							
						 
						
							2018-10-28 09:58:20 +01:00  
				
					
						
							
							
								 
						
							
								cb03a41a3b 
								
							 
						 
						
							
							
								
								Use enum wl_shm_format for gles2 texture formats  
							
							... 
							
							
							
							Also rephrase the write_pixels comment. 
							
						 
						
							2018-10-16 09:35:28 +02:00  
				
					
						
							
							
								 
						
							
								cd28637187 
								
							 
						 
						
							
							
								
								Remove fmt parameter from wlr_texture_write_pixels  
							
							... 
							
							
							
							It's not allowed to change the format of a texture so remove
the confusing parameter. 
							
						 
						
							2018-10-15 23:56:56 +02:00  
				
					
						
							
							
								 
						
							
								affbfb6a28 
								
							 
						 
						
							
							
								
								Support older wlr_linux_dmabuf_v1 clients  
							
							... 
							
							
							
							If a client uses an older version of the dmabuf protocol, use the
`formats` event instead of `modifiers` (since that didn't exist in older
versions).
With a bit of necessary guessing, support dmabuf importing even when
EGL_EXT_image_dma_buf_import_modifiers isn't present instead of
failing up front. 
							
						 
						
							2018-10-12 23:07:45 +02:00  
				
					
						
							
							
								 
						
							
								fd3fa760d3 
								
							 
						 
						
							
							
								
								Revert "Revert "Merge pull request  #1194  from ascent12/meson_feature""  
							
							... 
							
							
							
							This reverts commit 9c886f20b9 
							
						 
						
							2018-08-24 19:35:02 +12:00  
				
					
						
							
							
								 
						
							
								9c886f20b9 
								
							 
						 
						
							
							
								
								Revert "Merge pull request  #1194  from ascent12/meson_feature"  
							
							... 
							
							
							
							This breaks wlroots when used as a meson subproject.
This reverts commit dea311992e6db9c4b746 
							
						 
						
							2018-08-23 21:00:58 -04:00  
				
					
						
							
							
								 
						
							
								51892e0d74 
								
							 
						 
						
							
							
								
								Install headers explicitly  
							
							
							
						 
						
							2018-08-22 21:16:16 +12:00  
				
					
						
							
							
								 
						
							
								211ae764fd 
								
							 
						 
						
							
							
								
								Initial pass on API stability guarantees  
							
							... 
							
							
							
							This introduces -DWLR_USE_UNSTABLE and adds information regarding the
stability status to all headers. I started with a conservative set of
headers to mark as stable:
- types/wlr_matrix.h
- util/edges.h
- util/log.h
- util/region.h
- xcursor.h 
							
						 
						
							2018-07-29 19:20:34 -04:00  
				
					
						
							
							
								 
						
							
								c4915d1492 
								
							 
						 
						
							
							
								
								render: add wlr_texture_is_opaque  
							
							
							
						 
						
							2018-07-12 23:35:33 +01:00  
				
					
						
							
							
								 
						
							
								2b9cbaddf3 
								
							 
						 
						
							
							
								
								screencopy: add support for frame flags  
							
							
							
						 
						
							2018-06-30 22:18:03 +01:00  
				
					
						
							
							
								 
						
							
								57548b557a 
								
							 
						 
						
							
							
								
								Merge branch 'master' into screencontent  
							
							
							
						 
						
							2018-06-17 14:49:18 +01:00  
				
					
						
							
							
								 
						
							
								f1a62a3200 
								
							 
						 
						
							
							
								
								Rename egl.exts to match the extension names  
							
							
							
						 
						
							2018-06-09 19:11:51 +02:00  
				
					
						
							
							
								 
						
							
								5ec6d8230d 
								
							 
						 
						
							
							
								
								Split eglSwapBuffersWithDamage feature detection  
							
							... 
							
							
							
							Detecting whether eglSwapBuffersWithDamageEXT or
eglSwapBuffersWithDamageKHR is used should be based on the extension
string, not only on the availability of the function. 
							
						 
						
							2018-06-09 11:39:14 +02:00  
				
					
						
							
							
								 
						
							
								457bfcab19 
								
							 
						 
						
							
							
								
								render/egl: only request high priority context on DRM  
							
							
							
						 
						
							2018-06-08 00:17:45 +01:00  
				
					
						
							
							
								 
						
							
								d425edc96c 
								
							 
						 
						
							
							
								
								render/egl: consistent extension checking  
							
							
							
						 
						
							2018-06-08 00:06:34 +01:00  
				
					
						
							
							
								 
						
							
								cbfe0e834a 
								
							 
						 
						
							
							
								
								Request a high priority EGL context  
							
							
							
						 
						
							2018-06-08 00:06:34 +01:00  
				
					
						
							
							
								 
						
							
								21928cbe61 
								
							 
						 
						
							
							
								
								Merge branch 'master' into screencontent  
							
							
							
						 
						
							2018-05-31 12:33:27 +01:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								28020ff577 
								
							 
						 
						
							
							
								
								Only allow one modifier per DMA-BUF, split attributes struct in render/  
							
							
							
						 
						
							2018-05-30 09:29:12 +01:00  
				
					
						
							
							
								 
						
							
								5ba1a9af56 
								
							 
						 
						
							
							
								
								render: add wlr_texture_to_dmabuf  
							
							
							
						 
						
							2018-05-29 18:47:17 +01:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								41130fe54b 
								
							 
						 
						
							
							
								
								render: bind wl_drm in renderer  
							
							
							
						 
						
							2018-05-21 19:07:08 +01:00  
				
					
						
							
							
								 
						
							
								449f06556a 
								
							 
						 
						
							
							
								
								Destroy wlr_surface with wlr_renderer  
							
							
							
						 
						
							2018-04-26 00:11:36 +01:00  
				
					
						
							
							
								 
						
							
								018b82c01e 
								
							 
						 
						
							
							
								
								render/egl: allow passing NULL to surface and image destructors  
							
							
							
						 
						
							2018-04-25 08:28:48 +01:00  
				
					
						
							
							
								 
						
							
								eaed6bd03b 
								
							 
						 
						
							
							
								
								render/egl: add wlr_egl_destroy_surface  
							
							
							
						 
						
							2018-04-24 23:44:43 +01:00  
				
					
						
							
							
								 
						
							
								70d820be25 
								
							 
						 
						
							
							
								
								Add wlr_renderer_init_wl_shm to advertize supported renderer formats  
							
							
							
						 
						
							2018-04-20 23:58:30 +01:00  
				
					
						
							
							
								 
						
							
								d2ebbd103c 
								
							 
						 
						
							
							
								
								backend: remove wlr_backend_get_egl  
							
							
							
						 
						
							2018-04-08 11:00:56 -04:00  
				
					
						
							
							
								 
						
							
								f3f61bed3e 
								
							 
						 
						
							
							
								
								Untie wlr_gles2_renderer and wlr_gles2_texture  
							
							
							
						 
						
							2018-04-01 16:07:50 -04:00  
				
					
						
							
							
								 
						
							
								a7bb48b404 
								
							 
						 
						
							
							
								
								render/egl: add wlr_egl_create_image_from_wl_drm  
							
							... 
							
							
							
							This allows external renderers and potential future GL-based
renderers to re-use this function. 
							
						 
						
							2018-03-31 23:20:00 -04:00  
				
					
						
							
							
								 
						
							
								33a2eb4b77 
								
							 
						 
						
							
							
								
								Untie wlr_backend from wlr_renderer  
							
							
							
						 
						
							2018-03-31 18:49:43 -04:00  
				
					
						
							
							
								 
						
							
								330ee08126 
								
							 
						 
						
							
							
								
								Merge pull request  #744  from emersion/texture-redesign  
							
							... 
							
							
							
							Redesign wlr_texture 
							
						 
						
							2018-03-28 00:14:57 -04:00  
				
					
						
							
							
								 
						
							
								13edb19a6c 
								
							 
						 
						
							
							
								
								Fix issue starting up client EGL on X11 backend  
							
							
							
						 
						
							2018-03-27 18:51:38 -04:00  
				
					
						
							
							
								 
						
							
								c42fd1018b 
								
							 
						 
						
							
							
								
								render: remove GL calls from wlr_egl  
							
							
							
						 
						
							2018-03-27 17:02:48 -04:00  
				
					
						
							
							
								 
						
							
								adf4fb08dd 
								
							 
						 
						
							
							
								
								Merge branch 'master' into texture-redesign  
							
							
							
						 
						
							2018-03-26 19:13:13 -04:00  
				
					
						
							
							
								 
						
							
								793c3b3047 
								
							 
						 
						
							
							
								
								render: add simple functions to render rectangles and ellipses  
							
							
							
						 
						
							2018-03-26 12:41:51 -04:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								a854c2f246 
								
							 
						 
						
							
							
								
								Merge branch 'master' into gles2-renderer-redesign  
							
							
							
						 
						
							2018-03-23 00:55:55 +01:00  
				
					
						
							
							
								 
						
							
								b1f93bc5cc 
								
							 
						 
						
							
							
								
								render/egl: use EGL_KHR_debug  
							
							
							
						 
						
							2018-03-21 10:42:43 +01:00  
				
					
						
							
							
								 
						
							
								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  
				
					
						
							
							
								 
						
							
								95e86e675a 
								
							 
						 
						
							
							
								
								render/gles2: remove global state, use OpenGL debug extension  
							
							
							
						 
						
							2018-03-20 19:14:33 +01:00  
				
					
						
							
							
								 
						
							
								c41de2d1be 
								
							 
						 
						
							
							
								
								render: split render.h into wlr_renderer.h and wlr_texture.h  
							
							
							
						 
						
							2018-03-19 23:16:29 +01:00  
				
					
						
							
							
								 
						
							
								876f07e9f1 
								
							 
						 
						
							
							
								
								renderer: replace wlr_texture_get_matrix by wlr_render_texture  
							
							
							
						 
						
							2018-03-15 19:31:02 +01:00  
				
					
						
							
							
								 
						
							
								8b58e1a3ad 
								
							 
						 
						
							
							
								
								Merge branch 'master' into matrix-redesign  
							
							
							
						 
						
							2018-03-15 15:48:09 +01:00  
				
					
						
							
							
								 
						
							
								824a95ad19 
								
							 
						 
						
							
							
								
								matrix: use 2D matrices  
							
							
							
						 
						
							2018-03-15 15:33:58 +01:00  
				
					
						
							
							
								 
						
							
								14cdb6153f 
								
							 
						 
						
							
							
								
								Add initial linux_dmabuf protocol support  
							
							... 
							
							
							
							Tested with
    ./weston-simple-dmabuf-drm
    ./weston-simple-dmabuf-drm --import-immediate=1
    ./weston-simple-dmabuf-drm --y-inverted=1
    (and combinations)
Supports only single plane XRGB dmabufs for now. 
							
						 
						
							2018-03-15 12:40:18 +01:00  
				
					
						
							
							
								 
						
							
								d26b67cb06 
								
							 
						 
						
							
							
								
								matrix: unify API, don't use array pointers  
							
							
							
						 
						
							2018-03-15 11:10:56 +01:00  
				
					
						
							
							
								 
						
							
								b6a3f240c7 
								
							 
						 
						
							
							
								
								matrix: move to types/  
							
							
							
						 
						
							2018-03-15 09:11:27 +01:00  
				
					
						
							
							
								 
						
							
								d08792bfff 
								
							 
						 
						
							
							
								
								Add alpha to wlr_render_with_matrix  
							
							... 
							
							
							
							so we can use the alpha channel to e.g. blend in textures 
							
						 
						
							2018-02-25 13:47:48 +01:00  
				
					
						
							
							
								 
						
							
								c2e1474010 
								
							 
						 
						
							
							
								
								Reformat all #include directives  
							
							
							
						 
						
							2018-02-12 21:29:23 +01:00  
				
					
						
							
							
								 
						
							
								bf6d245400 
								
							 
						 
						
							
							
								
								Swap buffers with damage  
							
							
							
						 
						
							2018-02-09 22:54:14 +01:00  
				
					
						
							
							
								 
						
							
								ddb1779f9f 
								
							 
						 
						
							
							
								
								render: make wlr_renderer_clear take a float[4] for the color  
							
							
							
						 
						
							2018-02-03 09:32:02 +01:00  
				
					
						
							
							
								 
						
							
								51c22d39a4 
								
							 
						 
						
							
							
								
								Merge remote-tracking branch 'upstream/master' into output-damage  
							
							
							
						 
						
							2018-01-29 23:24:09 +01:00  
				
					
						
							
							
								 
						
							
								ed5b1fdedd 
								
							 
						 
						
							
							
								
								Merge pull request  #580  from emersion/screenshooter-renderer-backport  
							
							... 
							
							
							
							Backport screenshooter fixes from the renderer redesign v1 
							
						 
						
							2018-01-29 17:13:23 -05:00  
				
					
						
							
							
								 
						
							
								6281deb90f 
								
							 
						 
						
							
							
								
								Merge remote-tracking branch 'upstream/master' into output-damage  
							
							
							
						 
						
							2018-01-24 14:48:01 +01:00  
				
					
						
							
							
								 
						
							
								4fa90b0511 
								
							 
						 
						
							
							
								
								Backport screenshooter fixes from the renderer redesign v1  
							
							... 
							
							
							
							This backports some changes to #319  to fix the screenshooter data
format. This also adds wlr_backend_get_renderer which will be
useful to support multiple renderers. 
							
						 
						
							2018-01-23 22:06:54 +01:00  
				
					
						
							
							
								 
						
							
								415a2b7c56 
								
							 
						 
						
							
							
								
								render: add wlr_renderer_clear and wlr_renderer_scissor  
							
							
							
						 
						
							2018-01-22 16:42:22 +01:00  
				
					
						
							
							
								 
						
							
								85a6939cf2 
								
							 
						 
						
							
							
								
								rename matrix model box to project box  
							
							
							
						 
						
							2018-01-21 19:03:10 -05:00  
				
					
						
							
							
								 
						
							
								d13114520a 
								
							 
						 
						
							
							
								
								move matrix model code to matrix.h  
							
							
							
						 
						
							2018-01-21 15:53:42 -05:00  
				
					
						
							
							
								 
						
							
								0365b587f0 
								
							 
						 
						
							
							
								
								output: add damage tracking via buffer age  
							
							
							
						 
						
							2018-01-21 00:06:35 +01:00  
				
					
						
							
							
								 
						
							
								b99d1f4fcc 
								
							 
						 
						
							
							
								
								Refactor wlr_egl_init to accept config_attribs  
							
							
							
						 
						
							2017-12-17 23:51:04 +01:00  
				
					
						
							
							
								 
						
							
								23fb663ea4 
								
							 
						 
						
							
							
								
								Merge pull request  #453  from emersion/surface-transform  
							
							... 
							
							
							
							Add surface transforms support 
							
						 
						
							2017-12-14 14:43:04 -05:00  
				
					
						
							
							
								 
						
							
								18eb1eee3f 
								
							 
						 
						
							
							
								
								Listen to display destroy in xwayland, rename wlr_egl_free  
							
							
							
						 
						
							2017-12-08 00:59:37 +01:00  
				
					
						
							
							
								 
						
							
								f4754ad1a2 
								
							 
						 
						
							
							
								
								Fix surface transforms  
							
							
							
						 
						
							2017-11-30 23:58:12 +01:00  
				
					
						
							
							
								 
						
							
								9b984253e2 
								
							 
						 
						
							
							
								
								Move egl.h to render/egl.h  
							
							
							
						 
						
							2017-10-22 10:36:07 +13:00  
				
					
						
							
							
								 
						
							
								0ce3135304 
								
							 
						 
						
							
							
								
								Move read_pixels from output to renderer  
							
							
							
						 
						
							2017-10-08 02:11:56 +02:00  
				
					
						
							
							
								 
						
							
								009c3747a8 
								
							 
						 
						
							
							
								
								Multi-GPU DRM  
							
							
							
						 
						
							2017-10-01 22:29:25 +13:00  
				
					
						
							
							
								 
						
							
								427bdb5b55 
								
							 
						 
						
							
							
								
								Use more consistent include guard names  
							
							
							
						 
						
							2017-09-23 10:26:01 +02:00  
				
					
						
							
							
								 
						
							
								f24b3df980 
								
							 
						 
						
							
							
								
								wlr renderer/texture: rename init to create when it does alloc  
							
							
							
						 
						
							2017-08-19 08:33:31 +02:00  
				
					
						
							
							
								 
						
							
								72a33b736f 
								
							 
						 
						
							
							
								
								implement texture get buffer size  
							
							
							
						 
						
							2017-08-15 07:36:50 -04:00  
				
					
						
							
							
								 
						
							
								de6f32c84e 
								
							 
						 
						
							
							
								
								Refactor away wlr_renderer_state  
							
							
							
						 
						
							2017-08-14 08:37:50 -04:00  
				
					
						
							
							
								 
						
							
								94e6e6334b 
								
							 
						 
						
							
							
								
								Refactor out wlr_texture_state  
							
							
							
						 
						
							2017-08-14 08:25:26 -04:00  
				
					
						
							
							
								 
						
							
								c24351681f 
								
							 
						 
						
							
							
								
								Refactor EGL handling  
							
							
							
						 
						
							2017-08-10 22:15:37 -04:00  
				
					
						
							
							
								 
						
							
								67369173aa 
								
							 
						 
						
							
							
								
								Implement drm (egl) buffer attaching  
							
							
							
						 
						
							2017-08-10 10:59:58 +02:00  
				
					
						
							
							
								 
						
							
								4de930542f 
								
							 
						 
						
							
							
								
								Implement partial texture uploads  
							
							
							
						 
						
							2017-08-09 22:17:40 -04:00  
				
					
						
							
							
								 
						
							
								e167f41fde 
								
							 
						 
						
							
							
								
								Rename wlr_surface -> wlr_texture; attach -> upload  
							
							
							
						 
						
							2017-08-08 18:25:16 +02:00  
				
					
						
							
							
								 
						
							
								1db97a9af9 
								
							 
						 
						
							
							
								
								Updated DRM cursor rendering  
							
							
							
						 
						
							2017-08-06 21:38:40 +12:00  
				
					
						
							
							
								 
						
							
								8920b5d607 
								
							 
						 
						
							
							
								
								Merge branch 'wlcore'  
							
							
							
						 
						
							2017-06-29 16:00:24 -04:00  
				
					
						
							
							
								 
						
							
								0cd94f0cf0 
								
							 
						 
						
							
							
								
								Added software cursor fallback  
							
							
							
						 
						
							2017-06-26 17:34:15 +12:00  
				
					
						
							
							
								 
						
							
								5a2796266f 
								
							 
						 
						
							
							
								
								Support wl_shm pixel formats in gles2 renderer  
							
							
							
						 
						
							2017-06-23 14:25:55 -04:00  
				
					
						
							
							
								 
						
							
								2aafb5dd19 
								
							 
						 
						
							
							
								
								Add wlcore/wl_shm (WIP)  
							
							
							
						 
						
							2017-06-23 13:41:07 -04:00  
				
					
						
							
							
								 
						
							
								b18209c904 
								
							 
						 
						
							
							
								
								Switch to GLES2  
							
							... 
							
							
							
							Closes  #13  
						
							2017-06-23 11:38:45 -04:00  
				
					
						
							
							
								 
						
							
								fd91244e83 
								
							 
						 
						
							
							
								
								Update everyone to use new headers  
							
							
							
						 
						
							2017-06-21 10:27:45 -04:00  
				
					
						
							
							
								 
						
							
								2443a070e7 
								
							 
						 
						
							
							
								
								Add colored quad and ellipse rendering primitives  
							
							
							
						 
						
							2017-06-15 15:31:13 -04:00  
				
					
						
							
							
								 
						
							
								cd6a40d816 
								
							 
						 
						
							
							
								
								Further improvements to rendering subsystem  
							
							
							
						 
						
							2017-06-08 15:52:42 -04:00  
				
					
						
							
							
								 
						
							
								fc1dc1b5b0 
								
							 
						 
						
							
							
								
								Use constant VBO for quad, add matrix stuff  
							
							
							
						 
						
							2017-06-07 21:35:07 -04:00