summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/screen.cc9
1 files changed, 5 insertions, 4 deletions
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();
}
}
}