Always call XRRUpdateConfiguration on root window resize

This fixes a problem where HeightOfScreen and WidthOfScreen returned
old, incorrect sizes after the root window was resized while rdesktop
was not in fullscreen. Calling XRRUpdateConfiguration ensures that the
HeightOfScreen and WidthOfScreen macros return the proper values.

Signed-off-by: Henrik Andersson <hean01@cendio.com>
Signed-off-by: Karl Mikaelsson <derfian@cendio.se>
Signed-off-by: Thomas Nilefalk <thoni56@cendio.se>
This commit is contained in:
Cendio 2017-12-05 11:05:34 +01:00
parent ab50ea31cf
commit 2be151b328

5
xwin.c
View File

@ -2811,14 +2811,15 @@ xwin_process_events(void)
"xwin_process_events(), ConfigureNotify: Root window changed to %dx%d", "xwin_process_events(), ConfigureNotify: Root window changed to %dx%d",
xevent.xconfigure.width, xevent.xconfigure.width,
xevent.xconfigure.height); xevent.xconfigure.height);
XRRUpdateConfiguration(&xevent);
XSync(g_display, False);
gettimeofday(&g_resize_timer, NULL); gettimeofday(&g_resize_timer, NULL);
g_pending_resize = True; g_pending_resize = True;
} }
} }
XRRUpdateConfiguration(&xevent);
XSync(g_display, False);
} else } else
#endif #endif
if (xevent.xconfigure.window == g_wnd && !g_seamless_rdp && is_g_wnd_mapped) if (xevent.xconfigure.window == g_wnd && !g_seamless_rdp && is_g_wnd_mapped)