@ -49,6 +49,7 @@
 
			
		
	
		
			
				
					# include  "sway/tree/root.h"  
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					# if HAVE_XWAYLAND  
			
		
	
		
			
				
					# include  <wlr/xwayland/shell.h>  
			
		
	
		
			
				
					# include  "sway/xwayland.h"  
			
		
	
		
			
				
					# endif  
			
		
	
		
			
				
					
 
			
		
	
	
		
			
				
					
						
						
						
							
								 
						
					 
				
				@ -73,11 +74,25 @@ static void handle_drm_lease_request(struct wl_listener *listener, void *data) {
 
			
		
	
		
			
				
					}  
			
		
	
		
			
				
					# endif  
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					static  bool  filter_global ( const  struct  wl_client  * client ,  
			
		
	
		
			
				
							const  struct  wl_global  * global ,  void  * data )  { 
 
			
		
	
		
			
				
					# if HAVE_XWAYLAND  
			
		
	
		
			
				
						struct  wlr_xwayland  * xwayland  =  server . xwayland . wlr_xwayland ; 
 
			
		
	
		
			
				
						if  ( global  = =  xwayland - > shell_v1 - > global )  { 
 
			
		
	
		
			
				
							return  xwayland - > server  ! =  NULL  & &  client  = =  xwayland - > server - > client ; 
 
			
		
	
		
			
				
						} 
 
			
		
	
		
			
				
					# endif  
			
		
	
		
			
				
					
 
			
		
	
		
			
				
						return  true ; 
 
			
		
	
		
			
				
					}  
			
		
	
		
			
				
					
 
			
		
	
		
			
				
					bool  server_init ( struct  sway_server  * server )  {  
			
		
	
		
			
				
						sway_log ( SWAY_DEBUG ,  " Initializing Wayland server " ) ; 
 
			
		
	
		
			
				
						server - > wl_display  =  wl_display_create ( ) ; 
 
			
		
	
		
			
				
						server - > wl_event_loop  =  wl_display_get_event_loop ( server - > wl_display ) ; 
 
			
		
	
		
			
				
					
 
			
		
	
		
			
				
						wl_display_set_global_filter ( server - > wl_display ,  filter_global ,  NULL ) ; 
 
			
		
	
		
			
				
					
 
			
		
	
		
			
				
						server - > backend  =  wlr_backend_autocreate ( server - > wl_display ,  & server - > session ) ; 
 
			
		
	
		
			
				
						if  ( ! server - > backend )  { 
 
			
		
	
		
			
				
							sway_log ( SWAY_ERROR ,  " Unable to create backend " ) ;