void KWM::activate(Window w){ if (desktop(w) != currentDesktop()) switchToDesktop(desktop(w)); if (isIconified(w)) setIconify(w, FALSE); raise(w); activateInternal(w); }
bool KWM::isIconified(Window w){ static Atom a = 0; if (!a) a = XInternAtom(qt_xdisplay(), "KWM_WIN_ICONIFIED", False); long result = 0; if (!getSimpleProperty(w, a, result)){ setIconify(w, result != 0); } return result != 0; }
QRect KWM::setProperties(Window w, const QString &props){ int a; int data[13]; int d1,d2,d3,d4; int n = 0; QRect result; QString arg = props.data(); while ((a = arg.find('+', 0)) != -1){ if (n<13) data[n++]=arg.left(a).toInt(); arg.remove(0,a+1); } if (n<13) data[n++] = arg.toInt(); if (n!=13){ // fprintf(stderr, "KWM::setProperties: <bad properties error>\n"); return result; } n = 0; moveToDesktop(w, data[n++]); d1 = data[n++]; d2 = data[n++]; d3 = data[n++]; d4 = data[n++]; result = QRect(d1,d2,d3,d4); setGeometry(w, result); d1 = data[n++]; d2 = data[n++]; d3 = data[n++]; d4 = data[n++]; setGeometryRestore(w, QRect(d1,d2,d3,d4)); setIconify(w, (data[n++] != 0) ); setMaximize(w, (data[n] != 0), data[n] );n++; setSticky(w, (data[n++] != 0) ); setDecoration(w, data[n++] ); return result; }
void InternalWindow::iconifyButtonAction(ActionEventDetails* const e) { setIconify(true); }