@ -4472,7 +4472,8 @@ weston_output_move(struct weston_output *output, int x, int y) 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 *  Removes  the  output  from  the  pending  list  and  adds  it  to  the  compositor ' s   
					 
					 
					 
					 *  Removes  the  output  from  the  pending  list  and  adds  it  to  the  compositor ' s   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 *  list  of  enabled  outputs .  The  output  created  signal  is  emitted .   
					 
					 
					 
					 *  list  of  enabled  outputs .  The  output  created  signal  is  emitted .   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 *   
					 
					 
					 
					 *   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 *  The  output  gets  an  internal  ID  assigned .   
					 
					 
					 
					 *  The  output  gets  an  internal  ID  assigned ,  and  the  wl_output  global  is   
				
			 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					 *  created .   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 *   
					 
					 
					 
					 *   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 *  \ param  compositor  The  compositor  instance .   
					 
					 
					 
					 *  \ param  compositor  The  compositor  instance .   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 *  \ param  output  The  output  to  be  added .   
					 
					 
					 
					 *  \ param  output  The  output  to  be  added .   
				
			 
			
		
	
	
		
		
			
				
					
						
							
								 
							 
						
						
							
								 
							 
						
						
					 
					 
					@ -4501,6 +4502,10 @@ weston_compositor_add_output(struct weston_compositor *compositor, 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
						wl_list_insert ( compositor - > output_list . prev ,  & output - > link ) ;   
					 
					 
					 
						wl_list_insert ( compositor - > output_list . prev ,  & output - > link ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
						output - > enabled  =  true ;   
					 
					 
					 
						output - > enabled  =  true ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
						output - > global  =  wl_global_create ( compositor - > wl_display ,   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
										  & wl_output_interface ,  3 ,   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
										  output ,  bind_output ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
						wl_signal_emit ( & compositor - > output_created_signal ,  output ) ;   
					 
					 
					 
						wl_signal_emit ( & compositor - > output_created_signal ,  output ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
						wl_list_for_each_safe ( view ,  next ,  & compositor - > view_list ,  link )   
					 
					 
					 
						wl_list_for_each_safe ( view ,  next ,  & compositor - > view_list ,  link )   
				
			 
			
		
	
	
		
		
			
				
					
						
							
								 
							 
						
						
							
								 
							 
						
						
					 
					 
					@ -4543,14 +4548,11 @@ weston_output_transform_coordinate(struct weston_output *output, 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 *  \ param  output  The  weston_output  object  that  needs  the  changes  undone .   
					 
					 
					 
					 *  \ param  output  The  weston_output  object  that  needs  the  changes  undone .   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 *   
					 
					 
					 
					 *   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 *  Removes  the  repaint  timer .   
					 
					 
					 
					 *  Removes  the  repaint  timer .   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 *  Destroys  the  Wayland  global  assigned  to  the  output .   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 *  Destroys  pixman  regions  allocated  to  the  output .   
					 
					 
					 
					 *  Destroys  pixman  regions  allocated  to  the  output .   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 */   
					 
					 
					 
					 */   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					static  void  
					 
					 
					 
					static  void  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					weston_output_enable_undo ( struct  weston_output  * output )  
					 
					 
					 
					weston_output_enable_undo ( struct  weston_output  * output )  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					{  
					 
					 
					 
					{  
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
						wl_global_destroy ( output - > global ) ;   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
						pixman_region32_fini ( & output - > region ) ;   
					 
					 
					 
						pixman_region32_fini ( & output - > region ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
						pixman_region32_fini ( & output - > previous_damage ) ;   
					 
					 
					 
						pixman_region32_fini ( & output - > previous_damage ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					}  
					 
					 
					 
					}  
				
			 
			
		
	
	
		
		
			
				
					
						
						
						
							
								 
							 
						
					 
					 
					@ -4575,7 +4577,7 @@ weston_output_enable_undo(struct weston_output *output) 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 *    object  that  the  output  is  being  destroyed .   
					 
					 
					 
					 *    object  that  the  output  is  being  destroyed .   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 *   
					 
					 
					 
					 *   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 *  -  wl_output  protocol  objects  referencing  this  weston_output   
					 
					 
					 
					 *  -  wl_output  protocol  objects  referencing  this  weston_output   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 *    are  made  inert .   
					 
					 
					 
					 *    are  made  inert ,  and  the  wl_output  global  is  removed .   
				
			 
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 
					 
					 
					 *   
					 
					 
					 
					 *   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 *  -  The  output ' s  internal  ID  is  released .   
					 
					 
					 
					 *  -  The  output ' s  internal  ID  is  released .   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 *   
					 
					 
					 
					 *   
				
			 
			
		
	
	
		
		
			
				
					
						
							
								 
							 
						
						
							
								 
							 
						
						
					 
					 
					@ -4608,6 +4610,8 @@ weston_compositor_remove_output(struct weston_output *output) 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
						wl_signal_emit ( & compositor - > output_destroyed_signal ,  output ) ;   
					 
					 
					 
						wl_signal_emit ( & compositor - > output_destroyed_signal ,  output ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
						wl_signal_emit ( & output - > destroy_signal ,  output ) ;   
					 
					 
					 
						wl_signal_emit ( & output - > destroy_signal ,  output ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
						wl_global_destroy ( output - > global ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					 
					 
					 
					 
						output - > global  =  NULL ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
						wl_resource_for_each ( resource ,  & output - > resource_list )  {   
					 
					 
					 
						wl_resource_for_each ( resource ,  & output - > resource_list )  {   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
							wl_resource_set_destructor ( resource ,  NULL ) ;   
					 
					 
					 
							wl_resource_set_destructor ( resource ,  NULL ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
						}   
					 
					 
					 
						}   
				
			 
			
		
	
	
		
		
			
				
					
						
							
								 
							 
						
						
							
								 
							 
						
						
					 
					 
					@ -4801,10 +4805,6 @@ weston_output_enable(struct weston_output *output) 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
						wl_list_init ( & output - > resource_list ) ;   
					 
					 
					 
						wl_list_init ( & output - > resource_list ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
						wl_list_init ( & output - > feedback_list ) ;   
					 
					 
					 
						wl_list_init ( & output - > feedback_list ) ;   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					
 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
						output - > global  =   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
							wl_global_create ( c - > wl_display ,  & wl_output_interface ,  3 ,   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
									 output ,  bind_output ) ;   
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
					
 
					 
					 
					 
					 
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
						/* Enable the output (set up the crtc or create a
   
					 
					 
					 
						/* Enable the output (set up the crtc or create a
   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
						 *  window  representing  the  output ,  set  up  the   
					 
					 
					 
						 *  window  representing  the  output ,  set  up  the   
				
			 
			
		
	
		
		
			
				
					
					 
					 
					 
						 *  renderer ,  etc )   
					 
					 
					 
						 *  renderer ,  etc )