Jak mogę usunąć „Show Desktop” z przełącznika Alt-Tab (aplikacji)?

100

Czy można usunąć „Pokaż pulpit” z przełącznika aplikacji Alt+ Tab?

David Dossot
źródło
Używasz Unity, prawda?
Christopher Kyle Horton
1
Tak, przepraszam, powinienem był podać. Poszedłem do ustawień Unity w CompizConfig, ale nie znalazłem żadnej widocznej opcji. Zastanawiam się, czy istnieje ukryta opcja, czy może jest to po prostu gdzie indziej.
David Dossot
1
Masz rację; Tam też nie mogłem go znaleźć. Nie jestem jednak pewien, czy może istnieć inny sposób.
Christopher Kyle Horton

Odpowiedzi:

37

To może być zrobione!

Przesłałem kompilację Unity dla 12.04, która to naprawia (brak opcji Pokaż pulpit w przełączniku Alt-Tab).

  • Aby zainstalować , otwórz terminal i:
sudo apt-add-repository ppa: izx / askubuntu -y
sudo apt-get update
sudo apt-get install jedność
  • Możesz włączyć ustawienie „Pokaż ikonę pulpitu” we wtyczce Unity w programie Compiz (za pomocą ccsm), aby uzyskać ikonę w programie uruchamiającym po lewej stronie:

    wprowadź opis zdjęcia tutaj

  • Jeśli / kiedy zostanie wydana nowa aktualizacja Unity, Menedżer aktualizacji pobierze ją automatycznie. Spróbuję „naprawić” aktualizację i umieścić ją w PPA jak najszybciej; dodaj komentarz do tej odpowiedzi, aby powiadomić mnie o aktualizacji i ponownym pojawieniu się „Pokaż pulpit” w Switcherze!

Jak to zrobiłeś?

Zmodyfikowałem źródło Unity. Składa się z dwóch kroków:

  1. Skomentuj wiersz 900 w plugins/unityshell/src/LauncherController.cpp, który domyślnie dodaje do przełącznika ikonę „Pokaż pulpit”:
// results.push_back (pimpl-> desktop_icon_);
  1. Zmień linię 1638 w plugins/unityshell/src/unityshell.cppz:

      if (! (results.size () == 1 && results [0] -> GetIconType () == AbstractLauncherIcon :: IconType :: TYPE_DESKTOP))

    do

      if (! results.size () == 0))
    • Chociaż lista ikon przełącznika Alt-Tab była wcześniej co najmniej 1 (ikona pokaż pulpit), teraz jest 0 i musimy to zmienić, aby pokazać przełącznik tylko wtedy, gdy na liście jest co najmniej jeden element (tj. przynajmniej jedna uruchomiona aplikacja).
ish
źródło
Wygląda na to, że obecna wersja jedności to 5.20, a twoja wersja to 5.14. Używam 12.04, więc niestandardowa kompilacja wydaje się być moją jedyną opcją. Dzięki za przedstawienie tego. Jeśli nie masz czasu na kompilację, może spróbuję.
isaaclw
Spędziłem trochę czasu i sam skompilowałem go do wersji 5.20. Poniżej zamieszczam swoją odpowiedź, ponieważ nie była tak prosta, jak sobie wyobrażałem: askubuntu.com/a/395031/17065
isaaclw
nie działa dla 12.04
Timmy
na 12.04 i więcej patrz następna odpowiedź
Postadelmaga,
103

13.04 i nowsze

W przypadku 13.04, 13.10 i 14.04, aby włączyć lub wyłączyć opcję „Pokaż pulpit” w przełączniku aplikacji, możesz użyć narzędzia unity-tweak-tool

Zainstaluj narzędzie Unity-Tweak-Tool

fotka

12.10

W wersji 12.10 dodano nowe ustawienie do CCSM, aby włączyć lub wyłączyć opcję „Pokaż pulpit” w przełączniku aplikacji.

Uruchom to polecenie w terminalu, aby zainstalować CCSM:

sudo apt-get install compizconfig-settings-manager

Teraz otwórz CCSM i przejdź do wtyczki Ubuntu Unity.

Wtyczka Ubuntu Unity

Przejdź do karty Switcher . Następnie zaznacz pole wyboru obok opcji Wyłącz pulpit w opcji przełącznika .

Wyłącz pulpit programu

Tada!  Nigdy więcej „Pokaż pulpit” w przełączniku aplikacji !.

jokerdino
źródło
Dziękuję Ci. Wyłączyłem go za pomocą Unity Tweak Tool, ale Twoja odpowiedź mnie tam wysłała. Ubunt 13.10. (Wyłączony, ponieważ czasami przełącza się na Pulpit)
adi
unity-tweak-tool działa również w 13.10.
eswald
3
Wspaniale, działa w 14.04, dziękuję!
Kostiantyn Rybnikov
2
unity-tweak-tool pracuje w 15.04 ..
Jean Jordaan,
1
unity-tweak-toolpracuje również w 16.04
Chris
8

W 14.04 udało mi się to osiągnąć w CompizConfig Settings Manager.

sudo apt-get install compizconfig-settings-manager

Odwiedzając:

  • Sekcja „Pulpit” wpisu w szerokim, białym, prawym obszarze →
  • Element „Ubuntu Unity Plugin” →
  • Karta „Switcher” →
  • Element „Wyłącz wyświetlanie pulpitu w przełączniku”.

To był domyślny, niestandardowy CCSM prosto z repozytoriów.

Erik Piper
źródło
1
Działa również w dniu 16.04, dzięki!
nerdherd
1

Nie jestem więc pewien, czy to ci pomoże, jednak podczas korzystania z Unity 2D, dość tego, że nie mam sterowników graficznych, wpadłem w gnoma. Potem niezadowolony wróciłem do interfejsu Unity. Nie mam już wyświetlanego „Pokaż pulpit” w przełączniku aplikacji ALT + TAB. Uważam, że jest to efekt uboczny interfejsu Gnome po ustawieniu go w lewym dolnym rogu, a kiedy wróciłem, już go nie miałem. Wydawało się, że pracuję dla mnie ... warte strzału.

esnowrackley
źródło
1
Dziękujemy za podzielenie się wrażeniami. Jak ryzykowne jest to podejście? Nie mogę sobie pozwolić na narażenie stabilności mojego środowiska pracy.
David Dossot
Dla mnie nie miałem z tym żadnych problemów, ale nie jestem też w 100% pewien, że to było to. Jeśli masz maszynę wirtualną, fajnie byłoby przetestować tę teorię, ja również dużo edytowałem panele, usuwając i dodając elementy, takie jak przełączniki obszaru roboczego i ikonę kosza, aby zastąpić prawdziwy wygląd gnoma, który miał 10.10. Nie pomyślałbym zbyt ryzykownie, ale warto spróbować. Jeśli naprawdę się tak martwisz, możesz utworzyć kopię zapasową wszystkiego, ale nie powinno to robić nic niezwykłego. Mogłem też mieć szczęśliwy błąd. Nie wiem, ja też to przetestuję. Zobacz, co mogę dla ciebie zrobić.
esnowrackley
0

Ostrzeżenie: Mam to działać dokładnie raz. Po ponownym uruchomieniu miałem dwa przypadki jedności i nie mogłem dowiedzieć się, dlaczego i jak. zabicie ich nie działało, a odinstalowanie ponownej instalacji nie pomogło.

Rozwiązałem to, instalując 13.10. Użyję innych poprawek wymienionych tutaj.

Nie mogłem tego uruchomić w 12.04, pakiet podany w innej odpowiedzi nie był wystarczająco nowy (wersja 5.14), a przewodnik nie był bezbłędny. (choć było to bardzo pomocne) Oto jak udało mi się zastosować poprawkę do Unity 5.20

1) Pobierz źródło:

sudo apt-get source unity

2) Zmień źródło:

diff -ru org/plugins/unityshell/src/LauncherController.cpp patch/plugins/unityshell/src/LauncherController.cpp
--- unity-5.20.0/plugins/unityshell/src/LauncherController.cpp  2013-04-12 04:24:42.000000000 -0400
+++ unity-diff/plugins/unityshell/src/LauncherController.cpp    2013-12-23 12:22:50.154961579 -0500
@@ -761,7 +761,7 @@
 {
   std::vector<AbstractLauncherIcon::Ptr> results;

-  results.push_back(pimpl->desktop_icon_);
+  //results.push_back(pimpl->desktop_icon_);

   for (auto icon : *(pimpl->model_))
   {
diff -ru org/plugins/unityshell/src/unityshell.cpp patch/plugins/unityshell/src/unityshell.cpp
--- unity-5.20.0/plugins/unityshell/src/unityshell.cpp  2013-04-12 04:24:42.000000000 -0400
+++ unity-diff/plugins/unityshell/src/unityshell.cpp    2013-12-23 12:24:36.718966737 -0500
@@ -1909,7 +1909,8 @@

   auto results = launcher_controller_->GetAltTabIcons(show_mode == switcher::ShowMode::CURRENT_VIEWPORT);

-  if (!(results.size() == 1 && results[0]->GetIconType() == AbstractLauncherIcon::IconType::TYPE_DESKTOP))
+//  if (!(results.size() == 1 && results[0]->GetIconType() == AbstractLauncherIcon::IconType::TYPE_DESKTOP))
+  if (!(results.size() == 0))
     switcher_controller_->Show(show_mode, switcher::SortMode::FOCUS_ORDER, false, results);

   return true;

3) Zainstaluj inne pakiety:

sudo apt-get build-dep unity
sudo apt-get install cmake

5) Uruchom cmake.

cd <source folder>
# from the INSTALL file
mkdir build; cd build
cmake .. -DCMAKE_BUILD_TYPE=Debug -DCOMPIZ_PLUGIN_INSTALL_TYPE=package -DCMAKE_INSTALL_PREFIX=/opt/unity
make
sudo make install

Uwaga: jeśli /usrzamiast tego ustawisz folder DCMAKE_INSTALL_PREFIX na /opt/unity, nie będziesz musiał później synchronizować rsync, ale najpierw spróbowałem połączyć plik. Poddałem się.

Przypuszczam, że cofnięcie najlepszej opcji to ponowna instalacja jedności, co spowoduje, że standardowe pliki zostaną nadpisane.

6) Zastąp pliki:

sudo rsync -av /opt/unity/ /usr/

7) Zainstaluj ponownie program unity-greeter. Najwyraźniej pliki zsynchronizowane zepsuły jedność-powitanie. Który jest najwyraźniej potrzebny do uruchomienia jedności.

sudo apt-get install --reinstall unity-greeter
isaaclw
źródło
0

Jeśli używasz dconfdo zarządzania ustawieniami Unity , ścieżka do tego ustawienia (po sprawdzeniu za pomocą dconf watch /) to:

/org/compiz/profiles/unity/plugins/unityshell/disable-show-desktop

Ustaw to na, truea pulpit zostanie usunięty jako alt-tabopcja.

jamesc
źródło