X11: Fix focus events not being filtered

The filter condition had ended up below the action.
master
Camilla Löwy ago%!(EXTRA string=6 years)
parent e463e85bba
commit c6b95e3b07
  1. 12
      src/x11_window.c

@ -1746,9 +1746,6 @@ static void processEvent(XEvent *event)
case FocusIn: case FocusIn:
{ {
if (window->cursorMode == GLFW_CURSOR_DISABLED)
disableCursor(window);
if (event->xfocus.mode == NotifyGrab || if (event->xfocus.mode == NotifyGrab ||
event->xfocus.mode == NotifyUngrab) event->xfocus.mode == NotifyUngrab)
{ {
@ -1757,6 +1754,9 @@ static void processEvent(XEvent *event)
return; return;
} }
if (window->cursorMode == GLFW_CURSOR_DISABLED)
disableCursor(window);
if (window->x11.ic) if (window->x11.ic)
XSetICFocus(window->x11.ic); XSetICFocus(window->x11.ic);
@ -1766,9 +1766,6 @@ static void processEvent(XEvent *event)
case FocusOut: case FocusOut:
{ {
if (window->cursorMode == GLFW_CURSOR_DISABLED)
enableCursor(window);
if (event->xfocus.mode == NotifyGrab || if (event->xfocus.mode == NotifyGrab ||
event->xfocus.mode == NotifyUngrab) event->xfocus.mode == NotifyUngrab)
{ {
@ -1777,6 +1774,9 @@ static void processEvent(XEvent *event)
return; return;
} }
if (window->cursorMode == GLFW_CURSOR_DISABLED)
enableCursor(window);
if (window->x11.ic) if (window->x11.ic)
XUnsetICFocus(window->x11.ic); XUnsetICFocus(window->x11.ic);

Loading…
Cancel
Save