Hei, tämä ominaisuus ottaa nyt toden teolla päähän. (Hauskinta tietysti se, että joku KDE-kehittäjä on nähnyt paljon vaivaa tämän ominaisuuden toteuttamiseen ja minä näen hirveästi vaivaa sen poistamiseen)
"Näytä työpöytä / Show Desktop" ja "Pienennä kaikki / Minimize All" ovat kaksi täysin eriasiaa, vaikka niitä yleisesti ottaen käytetään pahasti ristiin.
wmctrl-nimisellä ohjelmalla jolla voi komentaa ikkunoita tekemään vaikka mitä (löytyy repoista)
wmctrl -r "Downloads" -b add,hidden
Pienentää ikkunan, jonka nimi on Downloads. Jos käytät KDE:tä, niin ei pienennä.
Yritys 2:
Tein ohjelman, joka kelaa jokaisen ikkunan läpi ja pienentää sen. Pommin varma. Paitsi että ei toimi KDE:n kanssa. Ikkunan pienentäminen on vain kehoitus, jota KDE ei tottele. Muut ikkunoinnit kyllä.
Tallenna tiedostoon.
#include <X11/Xlib.h>
#include <X11/Xutil.h>
#include <X11/Xatom.h>
Display *dd;
Window root_win;
int scr_screen;
int main (int argc, char *argv[])
{
dd = XOpenDisplay (NULL);
if (!dd)
return 0;
scr_screen = DefaultScreen (dd);
root_win = RootWindow (dd, scr_screen);
unsigned int nwins, i;
Window dummyw1, dummyw2, *wins;
XWindowAttributes attr;
XQueryTree(dd, root_win, &dummyw1, &dummyw2, &wins, &nwins);
for(i = 0; i < nwins; i++)
{
XGetWindowAttributes(dd, wins[i], &attr);
XIconifyWindow (dd, wins[i], scr_screen);
//iconifyWindow( WId , False );
}
XFree(wins);
}
käännä:
gcc -lX11 tiedosto.c -o pienennin
Suorita
./pienennin
Ketään KDE:lle kehittäjää? Koodissa on kommentoituna toi kde:n iconifyWindow, sille pitää antaa ikkunoiden WId :ejä, jotta toimisi. Millä selvitän ne? Eli tiedän Window ja pitäs tietää WId.
(QT4:ssä tulee activeWindow, jolla saa ainakin yhden ikkunan WIdin selville, mutta pysyttelisin mielummin vielä tässä qt3:ssa)
Löytyy muuten googlella aika monta foorumia, jossa joku itkee samaa ongelmaa. Pari tuntia oon tota selvitelly.