all repos — openbox @ 137efd1367704aa39d139b59930c3d103ca7143f

openbox fork - make it a bit more like ryudo

more focus fixes. i wish this could end.
Dana Jansens danakj@orodu.net
commit

137efd1367704aa39d139b59930c3d103ca7143f

parent

7bb829f8b721b8b5a75740b2686fa12f63a798ff

2 files changed, 21 insertions(+), 14 deletions(-)

jump to
M openbox/event.copenbox/event.c

@@ -219,30 +219,37 @@ case PropertyNotify:

event_lasttime = e->xproperty.time; break; case FocusIn: + if (e->xfocus.mode == NotifyGrab) return; +/* if (e->type == FocusIn && window == focus_backup && focus_client != NULL) { +*/ + /* Something's focused but we got a focus event for the backup + window. this means that something unfocused before we received + the new FocusIn. Just ignore it, and refocus what should be + focused! */ +/* client_focus(focus_client); + return; + } +*/ + break; case FocusOut: - if (e->xfocus.mode == NotifyGrab) + if (e->xfocus.mode == NotifyGrab) return; /*|| e.xfocus.mode == NotifyUngrab ||*/ - /* From Metacity, from WindowMaker, ignore all funky pointer root events. Its commented out cuz I don't think we need this at all. If problems arise we can look into it */ /*e.xfocus.detail > NotifyNonlinearVirtual) */ - return; /* skip me! */ - if (e->type == FocusOut) { - /* FocusOut events just make us look for FocusIn events. They - are mostly ignored otherwise. */ - XEvent fi; - if (XCheckTypedEvent(ob_display, FocusIn, &fi)) { + + /* FocusOut events just make us look for FocusIn events. They + are mostly ignored otherwise. */ + { + XEvent fi; + if (XCheckTypedEvent(ob_display, FocusIn, &fi)) { event_process(&fi); /* dont unfocus the window we just focused! */ if (fi.xfocus.window == e->xfocus.window) return; } - } else if (window == focus_backup && focus_client != NULL) - /* Something's focused but we got a focus event for the backup - window. this means that something unfocused before we received - the new FocusIn. Just ignore it. */ - return; + } break; case EnterNotify: case LeaveNotify:
M openbox/openbox.copenbox/openbox.c

@@ -49,7 +49,7 @@ State ob_state;

gboolean ob_shutdown = FALSE; gboolean ob_restart = FALSE; char *ob_restart_path = NULL; -gboolean ob_remote = FALSE; +gboolean ob_remote = TRUE; gboolean ob_sync = FALSE; Cursors ob_cursors; char *ob_rc_path = NULL;