diff options
| author | Dana Jansens <danakj@orodu.net> | 2003-01-04 06:02:42 +0000 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2003-01-04 06:02:42 +0000 |
| commit | 83ff31f8bf021aeccdaac87c92faf1042d364e46 (patch) | |
| tree | fe4695632eb286ea780b8527aca8c3fa00362b31 | |
| parent | de07cce07a28de61b93a813f25b3a360613657a9 (diff) | |
when a window focused that was the last focused already (this happens from grabs), dont unfocus it, just let it be
| -rw-r--r-- | otk/eventdispatcher.cc | 8 |
1 files 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); |
