Drew DeVault
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								1e70b4cea2 
								
							 
						 
						
							
							
								
								Revert "Prevent excessive frame events when compositor doesn't swap buffers"  
							
							 
							
							
							
						 
						
							2018-10-05 07:37:41 -04:00  
						
					 
				
					
						
							
							
								 
								Ryan Dwyer
							
						 
						
							 
							
							
							
							
								
							
							
								b7b781ff44 
								
							 
						 
						
							
							
								
								Prevent excessive frame events when compositor doesn't swap buffers  
							
							 
							
							... 
							
							
							
							When we send an output frame event, we should not assume that the
compositor is going to call wlr_output_swap_buffers in response to it.
If the compositor does not swap the buffers, the idle event source still
exists and is executed every time the Wayland event loop becomes idle,
which means we send frame events repeatedly until the buffers are
swapped.
This moves the removal of the idle event source out of
wlr_output_swap_buffers and into wlr_output_send_frame, where it is
guaranteed to be removed. 
							
						 
						
							2018-10-05 20:14:34 +10:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
							
							
								
							
							
								eac7c2ad2f 
								
							 
						 
						
							
							
								
								output: add presentation refresh prediction  
							
							 
							
							
							
						 
						
							2018-10-04 22:00:24 +02:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
							
							
								
							
							
								b0635bf3e7 
								
							 
						 
						
							
							
								
								Rename get_present_clock to get_presentation clock, use it  
							
							 
							
							
							
						 
						
							2018-10-04 22:00:22 +02:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
							
							
								
							
							
								abddfc99f2 
								
							 
						 
						
							
							
								
								output: fix clock_gettime return value handling  
							
							 
							
							
							
						 
						
							2018-10-04 21:58:17 +02:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
							
							
								
							
							
								54e1287f30 
								
							 
						 
						
							
							
								
								backend: add get_present_clock  
							
							 
							
							
							
						 
						
							2018-10-04 21:58:17 +02:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
							
							
								
							
							
								26b9d6dbb1 
								
							 
						 
						
							
							
								
								output: send present event from all backends  
							
							 
							
							
							
						 
						
							2018-10-04 21:56:38 +02:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
							
							
								
							
							
								78389fe722 
								
							 
						 
						
							
							
								
								output: add present event  
							
							 
							
							
							
						 
						
							2018-10-04 21:56:38 +02:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
							
							
								
							
							
								2beb68007e 
								
							 
						 
						
							
							
								
								output: make gamma size a size_t and gamma table const  
							
							 
							
							
							
						 
						
							2018-10-03 10:36:33 +02:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
							
							
								
							
							
								928572c14d 
								
							 
						 
						
							
							
								
								output: add wlr_output_set_hardware_cursors_enabled  
							
							 
							
							... 
							
							
							
							And use it in screencopy. 
							
						 
						
							2018-09-18 11:37:37 +02:00  
						
					 
				
					
						
							
							
								 
								Drew DeVault
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								df991a55ab 
								
							 
						 
						
							
							
								
								Merge pull request  #1241  from emersion/output-enable-error-checking  
							
							 
							
							... 
							
							
							
							output: make wlr_output_enable return a bool 
							
						 
						
							2018-09-14 21:14:18 -04:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
							
							
								
							
							
								cb293f09e7 
								
							 
						 
						
							
							
								
								output: make wlr_output_enable return a bool  
							
							 
							
							
							
						 
						
							2018-09-14 18:18:07 +02:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
							
							
								
							
							
								524702eb16 
								
							 
						 
						
							
							
								
								output: introduce WLR_NO_HARDWARE_CURSORS  
							
							 
							
							
							
						 
						
							2018-09-14 18:07:21 +02:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
							
							
								
							
							
								017cfb0b86 
								
							 
						 
						
							
							
								
								backend/drm: log when de-allocating CRTC  
							
							 
							
							
							
						 
						
							2018-09-04 19:44:44 +02:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
							
							
								
							
							
								a149c2370a 
								
							 
						 
						
							
							
								
								Implement wlr-gamma-control-unstable-v1  
							
							 
							
							
							
						 
						
							2018-08-02 23:33:04 +01:00  
						
					 
				
					
						
							
							
								 
								Markus Ongyerth
							
						 
						
							 
							
							
							
							
								
							
							
								9a6f77fc2c 
								
							 
						 
						
							
							
								
								tablet-v2: fix merge commits and test again  
							
							 
							
							... 
							
							
							
							There were a few issues after rebase, that the merge algorithm didn't
throw at my face:
wlr_output did a check on the actual role, not a string anymore, so that
had to go to allow tablet-v2 to set cursor surfaces.
A few L_DEBUG/L_ERRORs were still around
There was a user-after-free in tablet-group free()ing, probably after
insufficient testing from a previous feedback pass 
							
						 
						
							2018-07-14 10:29:22 +02:00  
						
					 
				
					
						
							
							
								 
								Drew DeVault
							
						 
						
							 
							
							
							
							
								
							
							
								e226e2c011 
								
							 
						 
						
							
							
								
								Missed some old wlr_log calls  
							
							 
							
							
							
						 
						
							2018-07-11 18:36:31 -04:00  
						
					 
				
					
						
							
							
								 
								Drew DeVault
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								c0b4217fce 
								
							 
						 
						
							
							
								
								Merge pull request  #1116  from emersion/surface-role  
							
							 
							
							... 
							
							
							
							surface: replace wlr_surface_set_role_committed with wlr_surface_role 
							
						 
						
							2018-07-11 15:27:42 -07:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								7cbef15206 
								
							 
						 
						
							
							
								
								util: add wlr_ prefix to log symbols  
							
							 
							
							
							
						 
						
							2018-07-09 22:49:54 +01:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								deeca53e33 
								
							 
						 
						
							
							
								
								Rename wl_resources to resource, wl_global to global  
							
							 
							
							
							
						 
						
							2018-07-08 19:21:31 +01:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								5fe50b9a28 
								
							 
						 
						
							
							
								
								output: make wl_output resources inert  
							
							 
							
							
							
						 
						
							2018-07-07 23:02:08 +01:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								33db4263a0 
								
							 
						 
						
							
							
								
								surface: replace wlr_surface_set_role_committed with wlr_surface_role  
							
							 
							
							
							
						 
						
							2018-07-07 22:45:16 +01:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								f440708274 
								
							 
						 
						
							
							
								
								output: fix cursor attach coords handling  
							
							 
							
							
							
						 
						
							2018-07-04 19:12:18 +01:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								78555abba3 
								
							 
						 
						
							
							
								
								surface: move position and scale out of wlr_surface_state  
							
							 
							
							
							
						 
						
							2018-07-04 19:12:17 +01:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								3c0d672ebd 
								
							 
						 
						
							
							
								
								surface: make pending and current embedded structs  
							
							 
							
							
							
						 
						
							2018-07-04 19:12:17 +01:00  
						
					 
				
					
						
							
							
								 
								Dominique Martinet
							
						 
						
							 
							
							
							
							
								
							
							
								b3313b7f39 
								
							 
						 
						
							
							
								
								wlr_output: fix scope for 'now'  
							
							 
							
							... 
							
							
							
							'when' points to now that was defined in the if, so compiler could reuse
that memory area by the time 'when' is called
Found through static analysis. 
							
						 
						
							2018-06-30 11:38:21 +09:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								57548b557a 
								
							 
						 
						
							
							
								
								Merge branch 'master' into screencontent  
							
							 
							
							
							
						 
						
							2018-06-17 14:49:18 +01:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								0378d143d9 
								
							 
						 
						
							
							
								
								surface: remove wlr_surface.texture  
							
							 
							
							... 
							
							
							
							The texture is managed by the surface's wlr_buffer now. In
particular, the buffer can destroy the texture early if it becomes
invalid. 
							
						 
						
							2018-06-13 19:38:10 +01:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								21928cbe61 
								
							 
						 
						
							
							
								
								Merge branch 'master' into screencontent  
							
							 
							
							
							
						 
						
							2018-05-31 12:33:27 +01:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								e26f4dff98 
								
							 
						 
						
							
							
								
								export-dmabuf: wait for the frame to be ready, send timestamp  
							
							 
							
							
							
						 
						
							2018-05-29 18:47:17 +01:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								9e26808c28 
								
							 
						 
						
							
							
								
								output, backend/drm: add wlr_output_export_dmabuf  
							
							 
							
							
							
						 
						
							2018-05-29 18:45:45 +01:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								e849a68e6e 
								
							 
						 
						
							
							
								
								output: correctly clear screen when fullscreened  
							
							 
							
							
							
						 
						
							2018-05-20 13:44:18 +01:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								dbba1311b7 
								
							 
						 
						
							
							
								
								output: fix lingering hardware cursors  
							
							 
							
							
							
						 
						
							2018-05-15 18:13:26 +01:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								13098a18ea 
								
							 
						 
						
							
							
								
								Fix hardware cursors scale & transform  
							
							 
							
							
							
						 
						
							2018-05-09 19:58:18 +01:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								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  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								7843a48432 
								
							 
						 
						
							
							
								
								output: simplify and update code style  
							
							 
							
							
							
						 
						
							2018-05-03 18:46:17 +01:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								6b3eac37f1 
								
							 
						 
						
							
							
								
								output: assert move_cursor if set_cursor is available  
							
							 
							
							
							
						 
						
							2018-05-02 15:04:35 +01:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								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  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								625a7a48dc 
								
							 
						 
						
							
							
								
								Don't use the wlr_ prefix for static functions  
							
							 
							
							
							
						 
						
							2018-04-25 23:51:00 +01:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								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  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								1b802d9251 
								
							 
						 
						
							
							
								
								Make wlr_renderer_scissor take normal coords instead of upside-down ones  
							
							 
							
							
							
						 
						
							2018-04-12 19:38:33 -04:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								31c8bdc277 
								
							 
						 
						
							
							
								
								Fix wlr_output_transform_compose  
							
							 
							
							
							
						 
						
							2018-04-12 19:05:05 -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
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								c41de2d1be 
								
							 
						 
						
							
							
								
								render: split render.h into wlr_renderer.h and wlr_texture.h  
							
							 
							
							
							
						 
						
							2018-03-19 23:16:29 +01:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								7894fca224 
								
							 
						 
						
							
							
								
								matrix: rename wlr_matrix_texture to wlr_matrix_projection  
							
							 
							
							
							
						 
						
							2018-03-15 21:26:45 +01:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								824a95ad19 
								
							 
						 
						
							
							
								
								matrix: use 2D matrices  
							
							 
							
							
							
						 
						
							2018-03-15 15:33:58 +01:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								d26b67cb06 
								
							 
						 
						
							
							
								
								matrix: unify API, don't use array pointers  
							
							 
							
							
							
						 
						
							2018-03-15 11:10:56 +01:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								b6a3f240c7 
								
							 
						 
						
							
							
								
								matrix: move to types/  
							
							 
							
							
							
						 
						
							2018-03-15 09:11:27 +01:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								8e3d294d6a 
								
							 
						 
						
							
							
								
								output: fix trailing cursor at (0, 0) on startup  
							
							 
							
							
							
						 
						
							2018-03-11 11:21:40 +01:00  
						
					 
				
					
						
							
							
								 
								emersion
							
						 
						
							 
							
							
								
								
							
							
							
								
							
							
								a951fbb264 
								
							 
						 
						
							
							
								
								output: don't move hidden cursors  
							
							 
							
							... 
							
							
							
							When using the DRM backend and multiple outputs, that reduces the
number of commits. 
							
						 
						
							2018-03-07 10:22:39 +01:00