Як я можу видалити "Показати робочий стіл" з перемикача Alt-Tab (програми)?


100

Чи можливо видалити "Показати робочий стіл" з перемикача додатків Alt+ Tab?


Ви використовуєте Unity, чи не так?
Крістофер Кайл Хортон

1
Так, вибачте, повинні були вказати. Я перейшов до налаштувань Unity в CompizConfig, але не знайшов для цього видимого варіанту. Просто цікаво, чи є прихований варіант чи просто просто десь в іншому місці.
Девід Доссот

1
Ви праві; Я також не міг його знайти. Я не впевнений, чи може бути інший шлях для цього.
Крістофер Кайл Хортон

Відповіді:


37

Це можна зробити!

Я завантажив збірку Unity за 12.04, яка виправляє це (немає Show Desktop у перемикачі Alt-Tab).

  • Щоб встановити , відкрийте термінал і:
sudo apt-add-repository ppa: izx / askubuntu -y
sudo apt-get update
sudo apt-get install єдність
  • Ви можете ввімкнути налаштування "Показати значок робочого столу" в плагіні Unity в Compiz (використовуючи ccsm), щоб отримати значок на панелі запуску зліва:

    введіть тут опис зображення

  • Якщо / коли вийде нове оновлення Unity, Менеджер оновлень завантажить його автоматично. Я спробую якнайшвидше "виправити" оновлення та ввести його в PPA; будь-ласка, додайте коментар до цієї відповіді, щоб попередити мене, якщо ви оновите, і "Показати робочий стіл" знову з'явиться у перемикачі!

Як ти це зробив?

Я змінив Джерело Єдності. Він складається з двох етапів:

  1. Прокоментуйте рядок 900 дюймів plugins/unityshell/src/LauncherController.cpp, який за замовчуванням додає значок "Показати робочий стіл" до комутатора:
// results.push_back (pimpl-> desktop_icon_);
  1. Змінити рядок 1638 на plugins/unityshell/src/unityshell.cpp:

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

    до

      if (! results.size () == 0))
    • У той час як список піктограм комутатора Alt-Tab раніше був щонайменше 1 (піктограма робочого столу), зараз він дорівнює 0, і нам потрібно змінити це, щоб показувати комутатор лише тоді, коли в списку є хоча б один елемент (тобто на принаймні одна програма працює).

Схоже, поточна версія єдності дорівнює 5,20, а ваша версія - 5,14. Я використовую 12.04, тому здається, що індивідуальна збірка є моїм єдиним варіантом. Дякуємо, що виклали це. Якщо у вас немає часу займатися побудовою, можливо, я спробую.
isaaclw

Я витратив деякий час і сам перекомпілював його за 5.20. Я опублікував свою відповідь нижче, оскільки це було не так прямо, як я уявляв: askubuntu.com/a/395031/17065
isaaclw

не працює за 12.04
Тіммі

на 12.04 і вище дивіться наступну відповідь
Postadelmaga

103

13.04 і новіші

У режимі 13.04, 13.10 та 14.04, щоб увімкнути або вимкнути опцію "Показати робочий стіл" у перемикачі програм, ви можете використовувати інструмент юнит-налаштування

Встановіть інструмент юнит-налаштування

рис

12.10

З 12.10 до CCSM було додано нове налаштування, щоб увімкнути або вимкнути опцію "Показати робочий стіл" у перемикачі програм.

Запустіть цю команду в терміналі, щоб встановити CCSM:

sudo apt-get install compizconfig-settings-manager

Тепер відкрийте CCSM і перейдіть до плагіна Ubuntu Unity.

Плагін Ubuntu Unity

Перехід на вкладку Switcher . Потім поставте прапорець біля пункту " Вимкнути показ робочого столу" в опції комутатора .

Вимкніть показ робочого столу

Тада!  Більше "Показати робочий стіл" у програмі перемикача програм !.


Дякую. Я відключив його за допомогою інструменту Unity Tweak Tool, але ваша відповідь надіслала мене туди. Ubunt 13.10. (Вимкнено його, бо іноді він переходить на робочий стіл)
adi

Єдність-налаштування-інструмент також працює в 13.10.
eswald

3
Чудово, працює в 14.04, дякую!
Костянтин Рибников

2
unity-tweak-toolпрацює в 15.04 ..
Жан Джордан

1
unity-tweak-toolпрацює також у 16.04
Кріс

8

У 14.04 мені вдалося виконати це в Менеджері налаштувань CompizConfig.

sudo apt-get install compizconfig-settings-manager

Відвідавши:

  • Розділ «Настільний» у списку у широкій, білій правій області →
  • Пункт "Ubuntu Unity Plugin" →
  • Вкладка «Перемикач» →
  • "Вимкнути показ робочого столу в перемикачі".

Це було за замовчуванням, незвичне CCSM прямо з репостів.


1
Працює також 16.04, дякую!
nerdherd


1

Тож я не впевнений, чи допоможе вам це, однак, використовуючи Unity 2D, мені не вистачало графічних драйверів, я занурився у запасний гном. Потім незадоволений, я повернувся до інтерфейсу Unity. У перемикача програм ALT + TAB більше не відображається "Показати робочий стіл". Я вважаю, що це побічний ефект інтерфейсу Gnome, встановлений у нижньому лівому куті, і коли я переключився назад, у мене його більше не було. Здавалося, для мене це працює ... варто зняти.


1
Дякуємо, що поділилися своїм досвідом. Наскільки ризикований такий підхід? Я не можу дозволити собі поставити під загрозу стабільність мого робочого середовища.
Девід Доссот

У мене не було проблем з цим інакше, проте я також не на 100% впевнений, що це було. Якщо у вас є VM, можливо, було б добре перевірити цю теорію, я також багато редагував панелі, видаляючи та додаючи елементи, такі як комутатори робочої області та піктограму сміття, щоб замінити справжнє відчуття гнома, яке було 10.10. Я б не вважав занадто ризикованим, але варто спробувати. Якщо ви насправді так хвилюєтесь, можете створити резервну копію всього, але це не повинно робити нічого звичайного. Я також, можливо, тільки що отримав щасливу помилку. Я не знаю, я теж це перевірю. Подивіться, що я можу зробити для вас.
esnowrackley

0

Попередження: у мене це спрацювало рівно один раз. Коли я перезапустив, у мене було два екземпляри єдності, і я не міг зрозуміти, чому і як. вбити їх не вийшло, а видалення перевстановлення не допомогло.

Я вирішив це, встановивши 13.10. Я буду використовувати інші перелічені тут виправлення.

Я не міг змусити це працювати в 12.04, пакет, наданий в іншій відповіді, був недостатньо новим (версія 5.14), а керівництво було не зовсім бездоганним. (хоча це було дуже корисно) Ось як мені вдалося застосувати виправлення для єдності 5.20

1) Завантажте джерело:

sudo apt-get source unity

2) Змініть джерело:

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) Встановіть інші пакети:

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

5) Виконати 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

Примітка. Якщо ви встановите папку DCMAKE_INSTALL_PREFIX на, /usrзамість /opt/unity, вам не доведеться пізніше rsync, але я спершу спробую зв’язати файл. Я здався.

Я вважаю, що найкращим варіантом буде скасувати, щоб перевстановити єдність, яка б поклала стандартні файли зверху.

6) Замініть файли:

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

7) Перевстановіть єдність-привітання. Мабуть, файли розбиті на єдність-поздоровлення. Яке, мабуть, потрібно для запуску єдності.

sudo apt-get install --reinstall unity-greeter

0

Якщо ви використовуєте dconfдля керування налаштуваннями Unity , шлях до цього параметра (шляхом інспекції з dconf watch /):

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

Встановіть це, trueі робочий стіл буде видалено як alt-tabопцію.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.