mirror of
				https://github.com/swaywm/sway.git
				synced 2025-11-03 09:01:43 -05:00 
			
		
		
		
	Fix incorrect damage being applied on popups
To reproduce: - Open a floating window and a popup that hangs over the bottom or right - Move the window in the direction of the popup overhang - The previous position of the popup is damaged, not the new one
This commit is contained in:
		
							parent
							
								
									b4950e2a6d
								
							
						
					
					
						commit
						f58f054c87
					
				
					 1 changed files with 7 additions and 7 deletions
				
			
		| 
						 | 
				
			
			@ -258,6 +258,13 @@ static void apply_container_state(struct sway_container *container,
 | 
			
		|||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// If the view hasn't responded to the configure, center it within
 | 
			
		||||
	// the container. This is important for fullscreen views which
 | 
			
		||||
	// refuse to resize to the size of the output.
 | 
			
		||||
	if (view && view->surface) {
 | 
			
		||||
		view_center_surface(view);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// Damage the new location
 | 
			
		||||
	desktop_damage_whole_container(container);
 | 
			
		||||
	if (view && view->surface) {
 | 
			
		||||
| 
						 | 
				
			
			@ -271,13 +278,6 @@ static void apply_container_state(struct sway_container *container,
 | 
			
		|||
		desktop_damage_box(&box);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	// If the view hasn't responded to the configure, center it within
 | 
			
		||||
	// the container. This is important for fullscreen views which
 | 
			
		||||
	// refuse to resize to the size of the output.
 | 
			
		||||
	if (view && view->surface) {
 | 
			
		||||
		view_center_surface(view);
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
	if (!container->node.destroying) {
 | 
			
		||||
		container_discover_outputs(container);
 | 
			
		||||
	}
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue