X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2Fclient.cc;h=e626081ce19e871a2fe37e25653f5f257ee69ed0;hb=7db3ffecc980821ada3e805e2471716896e2410a;hp=2461eff9161856005d306ea8993cbc889c58c434;hpb=cb718e2ad931928389ab95cc71564ea8358e92fd;p=chaz%2Fopenbox diff --git a/src/client.cc b/src/client.cc index 2461eff9..e626081c 100644 --- a/src/client.cc +++ b/src/client.cc @@ -907,6 +907,11 @@ void OBClient::unfocusHandler(const XFocusChangeEvent &e) frame->unfocus(); _focused = false; + + if (Openbox::instance->focusedClient() == this) { + printf("UNFOCUSED!\n"); + Openbox::instance->setFocusedClient(this); + } } @@ -1004,15 +1009,15 @@ void OBClient::destroyHandler(const XDestroyWindowEvent &e) void OBClient::reparentHandler(const XReparentEvent &e) { + // this is when the client is first taken captive in the frame + if (e.parent == frame->plate()) return; + #ifdef DEBUG printf("ReparentNotify for 0x%lx\n", e.window); #endif // DEBUG OtkEventHandler::reparentHandler(e); - // this is when the client is first taken captive in the frame - if (e.parent == frame->plate()) return; - /* This event is quite rare and is usually handled in unmapHandler. However, if the window is unmapped when the reparent event occurs,