lower, //done
close, //done
toggleshade, //done
+ toggleomnipresent, //done
moveWindowUp,
moveWindowDown,
moveWindowLeft,
XKeysymToKeycode(getXDisplay(),
XStringToKeysym("I")),
Mod1Mask | ControlMask));
+ _actions.push_back(Action(Action::toggleomnipresent,
+ XKeysymToKeycode(getXDisplay(),
+ XStringToKeysym("O")),
+ Mod1Mask | ControlMask));
activateGrabs();
}
window->lower();
return;
+ case Action::toggleomnipresent:
+ if (window->desktop() == 0xffffffff)
+ window->sendTo(_active_desktop);
+ else
+ window->sendTo(0xffffffff);
+ return;
+
case Action::toggleshade:
window->shade(! window->shaded());
return;
_xatom->sendClientMessage(_screen->rootWindow(), XAtom::net_active_window,
_window);
}
+
+
+void XWindow::sendTo(unsigned int dest) const {
+ _xatom->sendClientMessage(_screen->rootWindow(), XAtom::net_wm_desktop,
+ _window, dest);
+}
void lower() const;
void iconify() const;
void focus() const;
+ void sendTo(unsigned int dest) const;
bool operator == (const XWindow &w) const { return w._window == _window; }
bool operator == (const Window &w) const { return w == _window; }