From b3d454b146c4c7ebc11144ef08f98d9b8b62cf0a Mon Sep 17 00:00:00 2001 From: Benjamin Otte Date: Thu, 22 Dec 2011 22:45:31 +0100 Subject: [PATCH] dix: Send FocusOut events to all intermediates The code passed the parent to this function and then started with the parent inside the function. So the first parent never received an event. https://bugs.freedesktop.org/show_bug.cgi?id=44079 --- dix/enterleave.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/dix/enterleave.c b/dix/enterleave.c index b1ee3fb..3e10cd8 100644 --- a/dix/enterleave.c +++ b/dix/enterleave.c @@ -641,7 +641,7 @@ DeviceFocusOutEvents(DeviceIntPtr dev, if (ancestor == child) return; - for (win = child->parent; win != ancestor; win = win->parent) + for (win = child; win != ancestor; win = win->parent) DeviceFocusEvent(dev, XI_FocusOut, mode, detail, win); } -- 1.7.7.3