xf86Cursors: xf86_reload_cursors shouldn't unconditionally show hwcursor (#14820)
Also, no need to call ShowCursor when SetCursorPosition already does it Based on a previous patch by Maarten Maathuis Signed-off-by: Keith Packard <keithp@keithp.com>
This commit is contained in:
		
							parent
							
								
									9c5dd7337f
								
							
						
					
					
						commit
						0b8f8b24f7
					
				| 
						 | 
					@ -602,12 +602,19 @@ xf86_reload_cursors (ScreenPtr screen)
 | 
				
			||||||
    xf86CursorInfoPtr   cursor_info;
 | 
					    xf86CursorInfoPtr   cursor_info;
 | 
				
			||||||
    CursorPtr		cursor;
 | 
					    CursorPtr		cursor;
 | 
				
			||||||
    int			x, y;
 | 
					    int			x, y;
 | 
				
			||||||
 | 
					    xf86CursorScreenPtr cursor_screen_priv;
 | 
				
			||||||
    
 | 
					    
 | 
				
			||||||
    /* initial mode setting will not have set a screen yet.
 | 
					    /* initial mode setting will not have set a screen yet.
 | 
				
			||||||
       May be called before the devices are initialised.
 | 
					       May be called before the devices are initialised.
 | 
				
			||||||
     */
 | 
					     */
 | 
				
			||||||
    if (!screen || !inputInfo.pointer)
 | 
					    if (!screen || !inputInfo.pointer)
 | 
				
			||||||
	return;
 | 
						return;
 | 
				
			||||||
 | 
					    cursor_screen_priv = dixLookupPrivate(&screen->devPrivates,
 | 
				
			||||||
 | 
										  xf86CursorScreenKey);
 | 
				
			||||||
 | 
					    /* return if HW cursor is inactive, to avoid displaying two cursors */
 | 
				
			||||||
 | 
					    if (!cursor_screen_priv->isUp)
 | 
				
			||||||
 | 
						return;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    scrn = xf86Screens[screen->myNum];
 | 
					    scrn = xf86Screens[screen->myNum];
 | 
				
			||||||
    xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
 | 
					    xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -636,7 +643,6 @@ xf86_reload_cursors (ScreenPtr screen)
 | 
				
			||||||
	    (*cursor_info->LoadCursorImage)(cursor_info->pScrn, src);
 | 
						    (*cursor_info->LoadCursorImage)(cursor_info->pScrn, src);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	(*cursor_info->SetCursorPosition)(cursor_info->pScrn, x, y);
 | 
						(*cursor_info->SetCursorPosition)(cursor_info->pScrn, x, y);
 | 
				
			||||||
	(*cursor_info->ShowCursor)(cursor_info->pScrn);
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue