mirror of
				https://github.com/labwc/labwc.git
				synced 2025-11-03 09:01:51 -05:00 
			
		
		
		
	src/cursor.c: Ignore out-of-surface movement for surfaces without views
This commit is contained in:
		
							parent
							
								
									b24b9d2d23
								
							
						
					
					
						commit
						499df78531
					
				
					 1 changed files with 5 additions and 1 deletions
				
			
		| 
						 | 
				
			
			@ -297,13 +297,17 @@ process_cursor_motion(struct server *server, uint32_t time)
 | 
			
		|||
			server->seat.pressed.surface != surface &&
 | 
			
		||||
			!server->seat.drag_icon) {
 | 
			
		||||
		/*
 | 
			
		||||
		 * Button has been pressed while over a view surface
 | 
			
		||||
		 * Button has been pressed while over another surface
 | 
			
		||||
		 * and is still held down. Just send the adjusted motion
 | 
			
		||||
		 * events to the focused surface so we can keep scrolling
 | 
			
		||||
		 * or selecting text even if the cursor moves outside of
 | 
			
		||||
		 * the surface.
 | 
			
		||||
		 */
 | 
			
		||||
		view = server->seat.pressed.view;
 | 
			
		||||
		if (!view) {
 | 
			
		||||
			/* Button press originated on a layer surface, just ignore */
 | 
			
		||||
			return;
 | 
			
		||||
		}
 | 
			
		||||
		sx = server->seat.cursor->x - view->x;
 | 
			
		||||
		sy = server->seat.cursor->y - view->y;
 | 
			
		||||
		sx = sx < 0 ? 0 : (sx > view->w ? view->w : sx);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue