Moin moin,
tl;dr: Ich suche derzeit eine Möglichkeit, dass ich Programme von einem Monitor auf einen anderen Monitor verschieben kann. Dies soll per Shell-Script durchgeführt werden. Dabei habe ich mir schon xlsclients und xwininfo angesehen, erhalte dort jedoch nur falsche Informationen. Nun suche ich nach Alternativen oder Hilfe/Hinweise auf einen möglichen Denkfehler.
Folgende Situation habe ich hier:
Zwei Monitore mit gleicher Auflösung und nun nutze ich eine Windows VM fürs Gaming, welche durch eine zweite Grafikkarte Monitor 1 übernimmt, sobald die VM läuft. Dafür verwende ich xrandr und deaktiviere praktisch den Port an dem der Monitor hängt. Alle Fenster auf Monitor 1 landen dann automatisch auf Monitor 2.
Ist die VM beendet, dann wird per xrandr wieder der Monitor als primärer Monitor eingegliedert. Die Fenster bleiben jedoch auf Monitor 2.
Hier möchte ich gerne ansetzen und suche derzeit eine Möglichkeit, dass ich Fenster, welche zuvor auf Monitor 1 waren, auch wieder dahin schieben kann.
Erste Gehversuche mit xlsclients und xwininfo sind leider wenig vielversprechend. Ich kann zwar damit alle Windows erreichen, jedoch spuckt xwininfo offenbar falsche Informationen aus. Folgende Beispiel: Das Programm sublime befindet sich auf dem zweiten Monitor, nicht maximiert und füllt ca. 20% der Monitorfläche aus. Ist dabei in etwa Mittig platziert:
xwininfo: Window id: 0x3800001 "Sublime Text"
Absolute upper-left X: 10
Absolute upper-left Y: 10
Relative upper-left X: 10
Relative upper-left Y: 10
Width: 10
Height: 10
Depth: 24
Visual: 0x21
Visual Class: TrueColor
Border width: 0
Class: InputOutput
Colormap: 0x20 (installed)
Bit Gravity State: NorthWestGravity
Window Gravity State: NorthWestGravity
Backing Store State: NotUseful
Save Under State: no
Map State: IsUnMapped
Override Redirect State: no
Corners: +10+10 -3820+10 -3820-1060 +10-1060
-geometry 10x10+10+10
Die Positionierung samt Größe ist falsch. Genau genommen ist sie bei allen Fenstern identisch (falsch). Ich nutze auf diesem Rechner cinnamon mit lightdm, was hoffentlich keine gravierende Rolle spielt.
Nun ist die Frage: Geht mein Vorhaben überhaupt? Ist vielleicht einfach meine Toolwahl veraltet oder gibts vielleicht sogar bessere Möglichkeiten?
Bin für jeden Tipp dankbar 🙂