xwayland: Reset scheduled frames after hiding tablet cursor
Hiding the tablet tool cursor results in it being hidden forever after. This is due to the stale frame callback that will neither be disposed or replaced. This can be reproduced in krita (X11) as the pointer cursor is hidden while over the canvas. Clearing the frame callback ensures the correct behavior in future xwl_tablet_tool_set_cursor() calls (i.e. a new cursor surface being displayed, and a new frame callback created), and is 1:1 with xwl_seat_set_cursor() for pointers. Signed-off-by: Carlos Garnacho <carlosg@gnome.org>
This commit is contained in:
		
							parent
							
								
									26fe29f4fa
								
							
						
					
					
						commit
						dea4a74621
					
				| 
						 | 
				
			
			@ -188,6 +188,8 @@ xwl_tablet_tool_set_cursor(struct xwl_tablet_tool *xwl_tablet_tool)
 | 
			
		|||
        zwp_tablet_tool_v2_set_cursor(xwl_tablet_tool->tool,
 | 
			
		||||
                                      xwl_tablet_tool->proximity_in_serial,
 | 
			
		||||
                                      NULL, 0, 0);
 | 
			
		||||
        clear_cursor_frame_callback(xwl_cursor);
 | 
			
		||||
        xwl_cursor->needs_update = FALSE;
 | 
			
		||||
        return;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue