xwayland: Update actual screen and root window size on output hot plug
When a new output is hot-plugged we need to not only update our internal screen dimensions, but also the dix screen dimensions, screenInfo dimensions and the root window dimensions. https://bugs.freedesktop.org/show_bug.cgi?id=92273 Signed-off-by: Jonas Ådahl <jadahl@gmail.com> Reviewed-by: Daniel Stone <daniels@collabora.com>
This commit is contained in:
		
							parent
							
								
									211d4c2d35
								
							
						
					
					
						commit
						216bdbc735
					
				| 
						 | 
				
			
			@ -156,9 +156,22 @@ output_handle_done(void *data, struct wl_output *wl_output)
 | 
			
		|||
	--xwl_screen->expecting_event;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    if (xwl_screen->screen->root)
 | 
			
		||||
        SetRootClip(xwl_screen->screen, FALSE);
 | 
			
		||||
 | 
			
		||||
    xwl_screen->width = width;
 | 
			
		||||
    xwl_screen->height = height;
 | 
			
		||||
    RRScreenSizeNotify(xwl_screen->screen);
 | 
			
		||||
    xwl_screen->screen->width = width;
 | 
			
		||||
    xwl_screen->screen->height = height;
 | 
			
		||||
 | 
			
		||||
    if (xwl_screen->screen->root) {
 | 
			
		||||
        xwl_screen->screen->root->drawable.width = width;
 | 
			
		||||
        xwl_screen->screen->root->drawable.height = height;
 | 
			
		||||
        SetRootClip(xwl_screen->screen, TRUE);
 | 
			
		||||
        RRScreenSizeNotify(xwl_screen->screen);
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    update_desktop_dimensions();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static void
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue