Vorgeben, auf welchem Desktop ein Programm läuft?

GNU/Linux-, *BSD- und Fricklerforum
Antworten
Chawki

Vorgeben, auf welchem Desktop ein Programm läuft?

Beitrag von Chawki »

Wie kann man per Skript vorgeben auf welchem Desktop ein Programm (dessen Fenster/Frames/etc.) läuft, wenn es per Skript gestartet wird? :confused:
Mithrandir
Razor
Razor
Beiträge: 1962
Registriert: Aug 2000
Wohnort: Aachen

Beitrag von Mithrandir »

Afaik nicht. Mir ist kein Programm bekannt, das das kann. Allerdings gibt es in WindowMaker (ka ob andere WMs das auch haben) die Möglichkeit für ein Programm einen bestimmten Workspace vorzugeben indem man das Programm einmal startet und im Contextmenu des Frames eine Einstellungsseite aufruft und darin das ganze aktiviert.
[small]Viele Namen habe ich in vielen Ländern. Mithrandir heiße ich bei den Elben, Tharkûn bei den Zwergen;
Olórin war ich in meiner Jugend im Westen, der vergessen ist, im Süden Incánus, im Norden Gandalf; in den Osten gehe ich nicht.


J.R.R. Tolkien - The Lord Of The Rings[/small]
Chawki

Beitrag von Chawki »

Kann man denn wenigestens vorgeben, dass das Programm auf demselben Desktop bleibt, auf dem das startende Skript ist? :confused:
Mithrandir
Razor
Razor
Beiträge: 1962
Registriert: Aug 2000
Wohnort: Aachen

Beitrag von Mithrandir »

Das ganze läuft über Erkennungsmerkmale der gestarteten Fenster. Sprich wenn du dein Mailprogramm immer aufm zweiten Workspace haben willst geht das damit.

Was afaik nicht geht, ist dass du auf einem beliebigen Workspace ein Script startest, den Workspace wechselst und das von Script später gestartete Fenster auf dem alten Workspace erscheint. Was geht wäre das Programm von Hand zu starten und ihm einen bestimmten Workspace zuzuweisen. Dann wird beim Start des Programms durch das Script das Fenster immer auf dem angegebenen Workspace gestartet (auch wenn du gerade ganz wo anders arbeitest). Abhängig vom Startort geht es allerdings nicht mit der Methode.
[small]Viele Namen habe ich in vielen Ländern. Mithrandir heiße ich bei den Elben, Tharkûn bei den Zwergen;
Olórin war ich in meiner Jugend im Westen, der vergessen ist, im Süden Incánus, im Norden Gandalf; in den Osten gehe ich nicht.


J.R.R. Tolkien - The Lord Of The Rings[/small]
edgewalker

Beitrag von edgewalker »

Das startende Skript "ist" auf keinem Desktop. Der X-Server weiss nicht, zu welchen Prozessen welche Fenster gehören (-> Netzwerktransparenz).
pixelbrei
Bitterman
Bitterman
Beiträge: 160
Registriert: Okt 2001

Beitrag von pixelbrei »

In Fvwm kann man anhand des Fensternamens sagen, auf welchem Desktop / welcher Page das Fenster erscheinen soll.

Bei Fvwm kannst du in dein Skript auch einbauen, dass er den Desktop dynamisch vorgibt:

Code: Alles auswählen

FvwmCommand "Style app-window-name StartsOnPage 0 6 0" && exec app
oder StartsOnDesk, Syntax siehe manpage von fvwm.

Mehr is auch in anderen WMs nich drin :)
]t3rr0r[

Beitrag von ]t3rr0r[ »

pekwm kann das auch ...
cirad

Beitrag von cirad »

KDE kann es inzwischen am besten, wie ich finde. (:
pixelbrei
Bitterman
Bitterman
Beiträge: 160
Registriert: Okt 2001

Beitrag von pixelbrei »

Ja das können wohl einige... aber MEHR (im Bezug auf das Festlegen des Start-Desktops eines Fensters) können die auch net. Weil das wohl garnich geht, wie edgewalker das erklärt hat.

OT: cirad? nichmehr itaris? was is mit deinen 12345 posts?
pixelbrei
Bitterman
Bitterman
Beiträge: 160
Registriert: Okt 2001

Beitrag von pixelbrei »

So...
fvwm is cool :)
Da kann man sich tatsächlich zusammenskripten, dass ein Prog aufm aktuellen Desktop gestartet wird, auch wenn man vor Erscheinen des Fensters auf einen anderen Desktop wechselt.

Code: Alles auswählen

PipeRead `echo Style <window-name> SkipMapping, !FPGrabFocus, !FPFocusByProgram, StartsOnPage $[page.nx] $[page.ny]`
Exec <prog>
Manche progs (sancho) meinen zwar immer noch, ihr eigenes Süppchen kochen zu müssen, aber nur indem sie die Aufmerksamkeit auf sich lenken. Also dass man automatisch zurück zu dem Desktop wechselt, wo das Fenster erschienen ist. Aber zumindest landet es auf dem richtigen Desktop.
Und bei den meisten klappts ganz wie es soll. Also: Starten auf Desktop X, Desktop wechseln, nicht gestört werden, zurückwechseln zu X und da ist das Fenster :)


EDIT: Ich hab das Ganze mal als Howto auf linuxforen.de gepostet:
http://www.linuxforen.de/forums/showthread.php?p=997032
Antworten