2012-03-30 3 views
1

Ich mag einen einfachen spezialisierten Window-Manager für Präsentationen implementieren (nicht vom Benutzer steuerbar), dass nur die folgenden Operationen unterstützt:Welcher Fenstermanager sollte ich als Beispiel verwenden?

  1. Verschieben und Ändern der Größe von Fenstern
  2. Schelten Desktops
  3. Starten von Anwendungen nicht auf Strom Desktop (im Hintergrund), ohne das aktuelle Bild zu stören.

Ich brauche keine Benutzereingabe-Taste/Titel, ...

Welche bestehenden Fenstermanager sollte ich als Beispiel verwenden? Es gibt viele kleine "Hallo Welt" -Fenster, aber sie unterstützen normalerweise kein Desktop-Switching.

Antwort

2

Sie müssen das Rad nicht erneut implementieren.

  • openbox werden alles tun, den Sie erwähnen, und mehr.

    Bearbeiten Sie einfach die rc.xml, um das Hauptmenü zu deaktivieren und neu zu starten.

    Openbox ermöglicht auch per app setting, so dass bestimmte Anwendungen auf einem bestimmten Desktop standardmäßig oder mit einer bestimmten Größe öffnen oder ausgeblendet öffnen können.

    Es unterstützt auch Platzhalter in der Fensterauswahl, so dass Einstellungen für alle Fenster gelten können.

  • devilspie2 ist ein Fensterabgleich-Dienstprogramm, das bei jedem Öffnen eines Fensters Aktionen ausführen kann.

    Es ist stark hackbar und der Code ist available on github. Es wird Fenster nach Name/Klasse/etc beim Öffnen übereinstimmen und Aktionen für sie ausführen. (Einschließlich aller Fenster passend und sie zu einem anderen Desktop zu bewegen. Es wird mit den meisten Window-Manager arbeiten.

    Basierend auf dem Original devilspie die nicht Lua Scripting hat, aber ist so konfiguriert, mit s-exprs statt.

  • xdotool ermöglicht es Ihnen, auch ohne Hacking beliebigen Code komplexe Aktionen auf Windows auszuführen. es wird sogar gefälschte Benutzereingaben (Maus/kbd), wenn Sie es brauchen.

+0

OK, werde Openbox versuchen. Der Hauptpunkt ist die Kontrolle, auf welchem ​​Desktop neue Fenster angezeigt werden sollen (nicht nach Fensterklasse/Name). Gestartete Anwendungen müssen ihre Dateien im Hintergrund vorbereiten. –

+0

Openbox ermöglicht, in der Datei 'rc.xml', Fenster auf einem bestimmten Desktop basierend auf ihren X-Eigenschaften zu öffnen. – brice

+0

Ich brauche es, _all_ Windows auf dem Desktop N zu öffnen. Dann auf Desktop N zu wechseln und _all_ neue Fenster auf dem Desktop M zu öffnen. Vielleicht werde ich am Ende mit gepatchten openbox (oder super oder andere nicht aufgeblähte WM). –

1

es gibt ein paar window-Manager sind geschrieben in Python, der b Die guten Startpunkte. Qtile und whimsy beschreiben sich beide als hackable.