enum ActionType {
noaction = 0,
execute,
- iconify,
+ iconify, //done
raise, //done
lower, //done
close, //done
XKeysymToKeycode(getXDisplay(),
XStringToKeysym("Down")),
Mod1Mask));
+ _actions.push_back(Action(Action::iconify,
+ XKeysymToKeycode(getXDisplay(),
+ XStringToKeysym("I")),
+ Mod1Mask | ControlMask));
activateGrabs();
}
XWindow *window = *_active;
switch (it->type()) {
+ case Action::iconify:
+ window->iconify();
+ return;
+
case Action::close:
window->close();
return;
inline Window rootWindow() const { return _root; }
inline bool managed() const { return _managed; }
+ inline int number() const { return _number; }
void processEvent(const XEvent &e);
void XWindow::lower() const {
XLowerWindow(_epist->getXDisplay(), _window);
}
+
+
+void XWindow::iconify() const {
+ _xatom->sendClientMessage(_screen->rootWindow(), XAtom::wm_change_state,
+ _window, IconicState);
+}
void close() const;
void raise() const;
void lower() const;
+ void iconify() const;
bool operator == (const XWindow &w) const { return w._window == _window; }
bool operator == (const Window &w) const { return w == _window; }