X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2Fframe.cc;h=c5b144c5f3cbd4f8104389cb7529c008a77c8fef;hb=385de86d903c95e9897bd106b04e3ef1f70d9d2d;hp=3b9cb96888bed607bfb871d29b82417ad202ff27;hpb=cc36ecf2f2ba827081669512dc304c71b2169a83;p=chaz%2Fopenbox diff --git a/src/frame.cc b/src/frame.cc index 3b9cb968..c5b144c5 100644 --- a/src/frame.cc +++ b/src/frame.cc @@ -429,11 +429,14 @@ void OBFrame::grabClient() void OBFrame::releaseClient() { - // check if the app has already reparented its window away XEvent ev; + + // check if the app has already reparented its window away if (XCheckTypedWindowEvent(otk::OBDisplay::display, _client->window(), ReparentNotify, &ev)) { - XPutBack(otk::OBDisplay::display, &ev); + XPutBackEvent(otk::OBDisplay::display, &ev); + // re-map the window since the unmanaging process unmaps it + XMapWindow(otk::OBDisplay::display, _client->window()); } else { // according to the ICCCM - if the client doesn't reparent itself, then we // will reparent the window to root for them