X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;f=src%2Fscreen.cc;h=896f38081d15756f85a55fdeef1d16ab52a84a2e;hb=33ddfc7664d5988c370303217e5f1e3fdb431dd9;hp=991d3dc50aaefe3ea809cb39c13faec17ea2d91a;hpb=00e2c5aaad4a0831fd1e0d1b1c287df4d6eaac93;p=chaz%2Fopenbox diff --git a/src/screen.cc b/src/screen.cc index 991d3dc5..896f3808 100644 --- a/src/screen.cc +++ b/src/screen.cc @@ -502,8 +502,9 @@ void OBScreen::manageWindow(Window window) Openbox::instance->addClient(client->frame->grip_left(), client); Openbox::instance->addClient(client->frame->grip_right(), client); - // XXX: if on the current desktop.. - client->frame->show(); + // if on the current desktop.. (or all desktops) + if (client->desktop() == _desktop || client->desktop() == (signed)0xffffffff) + client->frame->show(); // XXX: handle any requested states such as maximized @@ -641,9 +642,9 @@ void OBScreen::changeDesktop(long desktop) OBClient::List::iterator it, end = clients.end(); for (it = clients.begin(); it != end; ++it) { if ((*it)->desktop() == old) { - // XXX hide + (*it)->frame->hide(); } else if ((*it)->desktop() == _desktop) { - // XXX show + (*it)->frame->show(); } } }