be54278207 
								
							 
						 
						
							
							
								
								Merge pull request  #1095  from agx/output-add-mode  
							
							... 
							
							
							
							Allow to add additional modes to outputs 
							
						 
						
							2018-07-07 08:58:17 -07:00  
				
					
						
							
							
								 
						
							
								8d72090afe 
								
							 
						 
						
							
							
								
								drm: Allow to add additional modes  
							
							... 
							
							
							
							This allows to add additional modes to the list of available video modes
using VESA Coordinated Video Timing information.
Closes  #1080  
							
						 
						
							2018-07-07 14:51:39 +02:00  
				
					
						
							
							
								 
						
							
								2b9cbaddf3 
								
							 
						 
						
							
							
								
								screencopy: add support for frame flags  
							
							
							
						 
						
							2018-06-30 22:18:03 +01:00  
				
					
						
							
							
								 
						
							
								f0d455f088 
								
							 
						 
						
							
							
								
								drm backend: overflow fixes  
							
							... 
							
							
							
							These operations are done in 32-bit arithmetics before being casted to 64-bit,
thus can overflow before the cast.
Casting early fixes the issue.
Found through static analysis 
							
						 
						
							2018-06-30 11:21:22 +09:00  
				
					
						
							
							
								 
						
							
								21928cbe61 
								
							 
						 
						
							
							
								
								Merge branch 'master' into screencontent  
							
							
							
						 
						
							2018-05-31 12:33:27 +01:00  
				
					
						
							
							
								 
						
							
								28020ff577 
								
							 
						 
						
							
							
								
								Only allow one modifier per DMA-BUF, split attributes struct in render/  
							
							
							
						 
						
							2018-05-30 09:29:12 +01:00  
				
					
						
							
							
								 
						
							
								bd430b8620 
								
							 
						 
						
							
							
								
								backend/drm: support multi-planar DMA-BUFs when exporting  
							
							
							
						 
						
							2018-05-29 18:47:17 +01:00  
				
					
						
							
							
								 
						
							
								9e26808c28 
								
							 
						 
						
							
							
								
								output, backend/drm: add wlr_output_export_dmabuf  
							
							
							
						 
						
							2018-05-29 18:45:45 +01:00  
				
					
						
							
							
								 
						
							
								79683ee497 
								
							 
						 
						
							
							
								
								backend/drm: better connector cleanup, add more logs  
							
							
							
						 
						
							2018-05-27 13:21:41 +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  
				
					
						
							
							
								 
						
							
								6a46fcc6f2 
								
							 
						 
						
							
							
								
								recalculate cursor projection matrix on set_cursor  
							
							... 
							
							
							
							Updates the projection matrix for the cursor plane in the DRM backend,
when the cursor is set, so new cursor are uploaded with the correct
transformation. 
							
						 
						
							2018-05-16 15:44:41 +02:00  
				
					
						
							
							
								 
						
							
								13098a18ea 
								
							 
						 
						
							
							
								
								Fix hardware cursors scale & transform  
							
							
							
						 
						
							2018-05-09 19:58:18 +01:00  
				
					
						
							
							
								 
						
							
								caf9f9022c 
								
							 
						 
						
							
							
								
								Merge pull request  #936  from emersion/full-hardware-cursors  
							
							... 
							
							
							
							output: always use hardware cursors if available 
							
						 
						
							2018-05-04 19:00:45 +01:00  
				
					
						
							
							
								 
						
							
								6305e6327f 
								
							 
						 
						
							
							
								
								Fix typos in comments and strings  
							
							
							
						 
						
							2018-05-03 21:59:43 +01:00  
				
					
						
							
							
								 
						
							
								1637053ef8 
								
							 
						 
						
							
							
								
								drm: only disable atomic modesetting when WLR_DRM_NO_ATOMIC == 1  
							
							... 
							
							
							
							Don't allow any value of the env var to disable atomic mode setting. 
							
						 
						
							2018-05-03 15:37:37 +02:00  
				
					
						
							
							
								 
						
							
								225d182765 
								
							 
						 
						
							
							
								
								output: always use hardware cursors if available  
							
							... 
							
							
							
							This changes the `wlr_output_impl.set_cursor` function to take a
`wlr_texture` instead of a byte buffer. This simplifies the
DRM and Wayland backends since they were creating textures from
the byte buffer anyway.
With this commit, performance should be improved when moving the
cursor since outputs don't need to be re-rendered anymore. 
							
						 
						
							2018-05-01 21:38:04 +01:00  
				
					
						
							
							
								 
						
							
								625a7a48dc 
								
							 
						 
						
							
							
								
								Don't use the wlr_ prefix for static functions  
							
							
							
						 
						
							2018-04-25 23:51:00 +01:00  
				
					
						
							
							
								 
						
							
								71ca45e2c0 
								
							 
						 
						
							
							
								
								Make sure we don't use others' prefixes  
							
							
							
						 
						
							2018-04-25 23:24:58 +01:00  
				
					
						
							
							
								 
						
							
								b0d99f5c67 
								
							 
						 
						
							
							
								
								Remove wlr_ prefix from local symbols  
							
							
							
						 
						
							2018-04-25 23:00:46 +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  
				
					
						
							
							
								 
						
							
								94fa6c88f4 
								
							 
						 
						
							
							
								
								output: don't emit the mode event if it hasn't changed  
							
							... 
							
							
							
							This also fixes  #535 . 
							
						 
						
							2018-04-18 00:15:25 +01:00  
				
					
						
							
							
								 
						
							
								d2ebbd103c 
								
							 
						 
						
							
							
								
								backend: remove wlr_backend_get_egl  
							
							
							
						 
						
							2018-04-08 11:00:56 -04:00  
				
					
						
							
							
								 
						
							
								b60e31e5c0 
								
							 
						 
						
							
							
								
								Merge pull request  #794  from emersion/renderer-untie-backend  
							
							... 
							
							
							
							Untie wlr_backend from wlr_renderer 
							
						 
						
							2018-03-31 21:31:15 -04:00  
				
					
						
							
							
								 
						
							
								a2391a6047 
								
							 
						 
						
							
							
								
								Fix cursor transform on DRM backend  
							
							
							
						 
						
							2018-03-31 20:55:31 -04:00  
				
					
						
							
							
								 
						
							
								33a2eb4b77 
								
							 
						 
						
							
							
								
								Untie wlr_backend from wlr_renderer  
							
							
							
						 
						
							2018-03-31 18:49:43 -04:00  
				
					
						
							
							
								 
						
							
								324b9d910d 
								
							 
						 
						
							
							
								
								Remove width_mm from wlr_touch events  
							
							
							
						 
						
							2018-03-28 11:04:40 -04:00  
				
					
						
							
							
								 
						
							
								3bda7e2ef8 
								
							 
						 
						
							
							
								
								Use DRM_FORMAT_MOD_LINEAR instead of a hardcoded constant  
							
							
							
						 
						
							2018-03-26 12:00:08 -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  
				
					
						
							
							
								 
						
							
								60bfe0a6aa 
								
							 
						 
						
							
							
								
								backend/drm: remove remaining raw GL call  
							
							... 
							
							
							
							This makes the hardware cursor code a less efficient. Can be
fixed with a GLES3 renderer. 
							
						 
						
							2018-03-21 11:34:08 +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  
				
					
						
							
							
								 
						
							
								c41de2d1be 
								
							 
						 
						
							
							
								
								render: split render.h into wlr_renderer.h and wlr_texture.h  
							
							
							
						 
						
							2018-03-19 23:16:29 +01:00  
				
					
						
							
							
								 
						
							
								6227da96b1 
								
							 
						 
						
							
							
								
								backend/drm: don't hardcode matrix  
							
							
							
						 
						
							2018-03-18 11:34:23 +01:00  
				
					
						
							
							
								 
						
							
								7894fca224 
								
							 
						 
						
							
							
								
								matrix: rename wlr_matrix_texture to wlr_matrix_projection  
							
							
							
						 
						
							2018-03-15 21:26:45 +01:00  
				
					
						
							
							
								 
						
							
								876f07e9f1 
								
							 
						 
						
							
							
								
								renderer: replace wlr_texture_get_matrix by wlr_render_texture  
							
							
							
						 
						
							2018-03-15 19:31:02 +01:00  
				
					
						
							
							
								 
						
							
								824a95ad19 
								
							 
						 
						
							
							
								
								matrix: use 2D matrices  
							
							
							
						 
						
							2018-03-15 15:33:58 +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  
				
					
						
							
							
								 
						
							
								d24f868bbe 
								
							 
						 
						
							
							
								
								backend/drm: fix cursor hotspot not updated  
							
							
							
						 
						
							2018-03-12 19:34:43 +01:00  
				
					
						
							
							
								 
						
							
								92ca4ad474 
								
							 
						 
						
							
							
								
								backend/drm: refactor wlr_drm_connector_set_cursor  
							
							
							
						 
						
							2018-03-11 11:40:03 +01:00  
				
					
						
							
							
								 
						
							
								2cea430488 
								
							 
						 
						
							
							
								
								prevent current_mode null on output_enable(false)  
							
							... 
							
							
							
							The current mode was set to NULL to abuse it as state variable
persisting DRM suspend/resume, this results resulted in a segfault on
normal DPMS cycle.
This reverts that change and uses the wlr_output enabled variable, which
also persists and makes more sense. 
							
						 
						
							2018-03-01 15:48:25 +01:00  
				
					
						
							
							
								 
						
							
								a65ef8ea86 
								
							 
						 
						
							
							
								
								restore dpms state on drm resume  
							
							... 
							
							
							
							If there is no current mode, set outputs to dpms off in drm resume.
Sets current mode to null on disable to ensure this can be checked. 
							
						 
						
							2018-02-26 18:12:51 +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  
				
					
						
							
							
								 
						
							
								1d9be89e2d 
								
							 
						 
						
							
							
								
								Revert "ELF Visibility"  
							
							
							
						 
						
							2018-02-19 18:01:27 -05:00  
				
					
						
							
							
								 
						
							
								86269052eb 
								
							 
						 
						
							
							
								
								Explicitly export EFL symbols  
							
							
							
						 
						
							2018-02-19 14:26:40 +13:00  
				
					
						
							
							
								 
						
							
								c2e1474010 
								
							 
						 
						
							
							
								
								Reformat all #include directives  
							
							
							
						 
						
							2018-02-12 21:29:23 +01:00