Durch Ersetzen von compiz / metacity durch openbox werden die Arbeitsbereiche auf 1 reduziert


0

Ich benutze gerne den GNOME-Desktop, aber ich ziehe es vor, den Fenstermanager durch eine Openbox mit 4 Arbeitsbereichen zu ersetzen. Allerdings, wenn ich laufen openbox --replace, die Anzahl der verfügbaren Workspaces sinkt auf 1. Wenn ich in obconf gehen, Arbeitsbereiche noch 4 zu sein ist so konfiguriert ( ~/.config/openbox/rc.xmlzeigt das gleiche). Ich kann die Arbeitsbereiche wieder anzeigen lassen, indem ich den Wert in obconf auf irgendetwas anderes ändere und dann wieder auf 4.

Ich beschäftige mich gerade mit diesem Problem seit Ubuntu 9.04 (jetzt bis 10.10), da ich nicht sehr oft neu starte. Aber es ist wirklich ärgerlich, meine Arbeitsbereiche zurücksetzen zu müssen, wenn ich neu starten muss. Das Ändern des Werts in rc.xml und das Ausführen openbox --reconfigurescheinen keine Auswirkungen zu haben. Also, was macht obconf, was ich nicht bin (sendet vielleicht eine dbus-Nachricht [BEARBEITEN: Beobachten mit, dbus-monitorich sehe keine Nachrichten beim Ändern des Workspaces-Werts in obconf])?

Ich hatte gehofft, es gäbe eine sauberere Möglichkeit, den Fenstermanager zu ändern, als nur openbox --replacebeim Anmelden zu laufen . Meine Fragen sind also:

  1. Gibt es eine bessere Möglichkeit, einen alternativen Fenstermanager anzugeben (dh eine Möglichkeit, bei der die Arbeitsbereiche nicht unterbrochen werden)?
  2. Wenn nicht, wie kann ich die Anzahl der Arbeitsbereiche automatisch auf 4 zurücksetzen?

Aktualisieren:

Endlich habe ich versucht, was ich zu MrShunz 'Antwort gesagt habe (und hinzugefügt WINDOW_MANAGER=/usr/bin/openboxhabe ~/.gnomerc). Aber der Effekt ist der gleiche wie openbox --replace.

Ein weiteres Update (als Antwort auf Geekosaurier):

Beim Laufen xprop -root -spysehe ich (unter anderem):

_NET_NUMBER_OF_DESKTOPS(CARDINAL) = 1
_NET_DESKTOP_NAMES(UTF8_STRING) = 0x57, 0x6f, 0x72, 0x6b, 0x73, 0x70, 0x61, 0x63, 0x65, 0x20, 0x31, 0x0

Aber ich nehme an, das macht Sinn, denn wenn ich openbox von einem Terminal aus starte, heißt es:

Openbox-WARNING **: Openbox is configured for 4 desktops, but the current session has 1.  Overriding the Openbox configuration.

Dies ist jedoch eine Lüge, da Metacity, der aktive Fenstermanager bei der Übernahme von openbox, für vier Desktops konfiguriert ist.

Antworten:


1

Eine weitere Problemumgehung: Wenn Sie odconf starten und die Anzahl der Arbeitsbereiche anpassen, werden auch die Arbeitsbereiche wiederhergestellt.


0

Nun, Sie können versuchen, die Konfiguration so vorzunehmen, wie Sie es möchten, und dann die Sitzung so speichern, wie es hier vorgeschlagen wird .


So habe ich es eingerichtet ( openbox --replaceund dann die Sitzung gespeichert). Aber wenn ich mich anmelde, habe ich nur einen Arbeitsbereich. Ich werde post # 5 auf dieser Seite , um zu versuchen haben, obwohl, das ist das Hinzufügen export WINDOW_MANAGER=/usr/bin/openboxzu ~/.gnomerc.
Brian

0

Ich würde gerne die Ausgabe sehen, xprop -root -spy | grep --line-buffered _NET_wenn Sie OpenBox starten. Ich vermute, es werden nicht die richtigen _NET_NUMBER_OF_DESKTOPSund / oder _NET_DESKTOP_NAMESAtome im Root-Fenster beim Start platziert, und wenn Sie die Einstellung ändern, werden die richtigen Werte dort abgelegt. Wenn ja, sollten Sie dies als Fehler gegen OpenBox einreichen.


Meine Frage wurde aktualisiert
Brian

@ Brian, ich glaube du hast gerade meinen Verdacht bestätigt. Ich würde jedoch vermuten, dass Metacity seine Desktop-Definitionen beim Beenden entfernt, sodass OpenBox versucht, zu initialisieren, nichts findet und standardmäßig einen einzelnen Desktop verwendet. Dies ist jedoch eher eine OpenBox-Frage. Sie sollten einen Fehlerbericht bei ihnen einreichen.
Geekosaurier

0

Endlich stolperte über eine Umgehung dafür. Anstatt openbox --replacebeim Start ausgeführt zu werden, führe ich ein Skript mit folgendem Inhalt aus:

openbox --replace &
metacity --replace &
openbox --replace &
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.