From 83ff31f8bf021aeccdaac87c92faf1042d364e46 Mon Sep 17 00:00:00 2001 From: Dana Jansens Date: Sat, 4 Jan 2003 06:02:42 +0000 Subject: [PATCH] when a window focused that was the last focused already (this happens from grabs), dont unfocus it, just let it be --- otk/eventdispatcher.cc | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/otk/eventdispatcher.cc b/otk/eventdispatcher.cc index 0c25ab08..51e2251e 100644 --- a/otk/eventdispatcher.cc +++ b/otk/eventdispatcher.cc @@ -132,22 +132,22 @@ void OtkEventDispatcher::dispatchEvents(void) if (unfocus != None) { // the last focus event was an FocusOut, so where the hell is the focus at? -// printf("UNFOCUSING: %lx\n", unfocus); + //printf("UNFOCUSING: %lx\n", unfocus); _focus_e.xfocus.type = FocusOut; _focus_e.xfocus.window = unfocus; dispatch(_focus_e); _focus = None; - } else if (focus != None) { + } else if (focus != None && focus != _focus) { // the last focus event was a FocusIn, so unfocus what used to be focus and // focus this new target -// printf("FOCUSING: %lx\n", focus); + //printf("FOCUSING: %lx\n", focus); _focus_e.xfocus.type = FocusIn; _focus_e.xfocus.window = focus; dispatch(_focus_e); if (_focus != None) { -// printf("UNFOCUSING: %lx\n", _focus); + //printf("UNFOCUSING: %lx\n", _focus); _focus_e.xfocus.type = FocusOut; _focus_e.xfocus.window = _focus; dispatch(_focus_e); -- 2.45.2