if (xfi->focused)
XGrabKeyboard(xfi->display, xfi->window->handle, true, GrabModeAsync, GrabModeAsync, CurrentTime);
- } else {
- // Keep track of which window has focus so that we can apply pointer updates
+ }
+ else
+ {
+ /* keep track of which window has focus so that we can apply pointer updates */
+
xfWindow* xfw;
rdpWindow* window;
rdpRail* rail = ((rdpContext*) xfi->context)->rail;
window = window_list_get_by_extra_id(rail->list, (void*) event->xexpose.window);
+
if (window != NULL)
{
xfw = (xfWindow*) window->extra;
stream_read_uint8(s, refreshRectSupport); /* refreshRectSupport (1 byte) */
stream_read_uint8(s, suppressOutputSupport); /* suppressOutputSupport (1 byte) */
+ if (!(extraFlags & FASTPATH_OUTPUT_SUPPORTED))
+ settings->fastpath_output = false;
+
if (refreshRectSupport == false)
settings->refresh_rect = false;