Zastąpienie compiz / metacity przez openbox redukuje obszary robocze do 1

0

Lubię korzystać z pulpitu GNOME, ale wolę zastąpić jego menedżera okien openboxem, z 4 obszarami roboczymi. Jednak kiedy biegam openbox --replace, liczba dostępnych obszarów roboczych spada do 1. Jeśli przejdę do obconf, przestrzenie robocze nadal będą skonfigurowane na 4 ( ~/.config/openbox/rc.xml pokazuje to samo). Mogę sprawić, że przestrzenie robocze pojawią się ponownie, zmieniając wartość w obconf na cokolwiek innego, a następnie z powrotem na 4.

Właśnie miałem do czynienia z tym problemem od Ubuntu 9.04 (teraz do 10.10), ponieważ nie restartuję zbyt często. Ale to naprawdę denerwujące, że muszę zresetować moje obszary robocze, gdy muszę ponownie uruchomić komputer. Zmiana wartości w rc.xml i uruchomienie openbox --reconfigure nie wydaje się mieć żadnego efektu. Więc co robi obconf, że nie jestem (może wysyła komunikat dbus [EDIT: oglądanie z dbus-monitor Nie widzę wiadomości podczas zmiany wartości obszarów roboczych w obconf])?

Miałem nadzieję, że będzie czystszy sposób na zmianę menedżera okien niż tylko na uruchamianie openbox --replace przy logowaniu. Moje pytania to:

  1. Czy istnieje lepszy sposób na określenie alternatywnego menedżera okien (tj. Sposobu, który nie powoduje przerwania obszarów roboczych)?
  2. Jeśli nie, jak mogę automatycznie ustawić liczbę obszarów roboczych z powrotem na 4?

Aktualizacja:

W końcu udało mi się wypróbować to, co skomentowałem w odpowiedzi MrShunza (dodając WINDOW_MANAGER=/usr/bin/openbox do ~/.gnomerc ). Ale efekt jest taki sam jak openbox --replace.

Kolejna aktualizacja (w odpowiedzi na geekozaura):

Podczas biegu xprop -root -spy Widzę to (wśród innych wartości):

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

Ale przypuszczam, że to ma sens, ponieważ kiedy uruchamiam openbox z terminala, mówi to:

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

Ale to kłamstwo, ponieważ metacity, które jest aktywnym menedżerem okien, kiedy przejmuje openbox, jest skonfigurowane dla czterech komputerów.

Brian
źródło

Odpowiedzi:

1

Kolejne obejście: uruchomienie odconf i dostosowanie liczby obszarów roboczych przywraca również obszary robocze.

Jonathan Mayer
źródło
0

Cóż, możesz spróbować skonfigurować, jak chcesz, do pracy, a następnie zapisać sesję zgodnie z sugestią tutaj .

Mr Shunz
źródło
Tak to ustawiłem ( openbox --replace a następnie zapisał sesję). Ale za każdym razem, gdy się loguję, mam tylko jeden obszar roboczy. Muszę jednak spróbować postu # 5 na tej stronie, co dodaje export WINDOW_MANAGER=/usr/bin/openbox do ~/.gnomerc.
Brian
0

Chciałbym zobaczyć wyjście z xprop -root -spy | grep --line-buffered _NET_ po uruchomieniu OpenBox; zgaduję, że nie stawia prawicy _NET_NUMBER_OF_DESKTOPS i / lub _NET_DESKTOP_NAMES atomy w oknie głównym podczas uruchamiania, a zmiana ustawienia powoduje, że umieszcza tam odpowiednie wartości. Jeśli tak, będziesz chciał złożyć to jako błąd w OpenBox.

geekosaur
źródło
Zaktualizowałem moje pytanie
Brian
@Brian, myślę, że właśnie potwierdziłeś moje podejrzenie. Zgaduję jednak, że Metacity usuwa swoje definicje pulpitu podczas zamykania, więc OpenBox próbuje zainicjować, nie znajduje niczego i domyślnie wybiera pojedynczy pulpit. Jest to raczej pytanie OpenBox; powinieneś zgłosić do nich raport o błędzie.
geekosaur
0

Wreszcie natknąłem się na obejście tego problemu. Zamiast biegać openbox --replace przy starcie uruchamiam skrypt o następującej treści:

openbox --replace &
metacity --replace &
openbox --replace &
Brian
źródło