void BScreen::addIcon(BlackboxWindow *w) {
if (! w) return;
- // we set the workspace to 'all workspaces' so that taskbars will show the
- // window. otherwise, it made uniconifying a window impoosible without the
- // blackbox workspace menu
- w->setWorkspace(0xffffffff);
+ w->setWorkspace(BSENTINEL);
w->setWindowNumber(iconList.size());
iconList.push_back(w);
void BlackboxWindow::setWorkspace(unsigned int n) {
blackbox_attrib.flags |= AttribWorkspace;
blackbox_attrib.workspace = n;
+ if (n == BSENTINEL) { // iconified window
+ /*
+ we set the workspace to 'all workspaces' so that taskbars will show the
+ window. otherwise, it made uniconifying a window imposible without the
+ blackbox workspace menu
+ */
+ n = 0xffffffff;
+ }
xatom->setValue(client.window, XAtom::net_wm_desktop, XAtom::cardinal, n);
}