如何从Alt-Tab(应用程序)切换器中删除“显示桌面”?


100

是否可以从Alt+ Tab应用程序切换器中删除“显示桌面” ?


您正在使用Unity,对吗?
Christopher Kyle Horton

1
是的,对不起,应该指定。我去了CompizConfig中的Unity设置,但是没有找到任何可见的选项。只是想知道是否有隐藏的选项,或者只是在其他地方。
大卫·多索特

1
你是对的; 我也在那里找不到。但是,我不确定是否还有其他方法可以解决此问题。
克里斯托弗·凯尔·霍顿

Answers:


37

可以办到!

我上传了一个针对12.04的Unity版本该版本对此进行了修复(Alt-Tab切换器中没有Show Desktop)。

  • 要安装,请打开一个终端,然后:
须藤apt-add-repository ppa:izx / askubuntu -y
sudo apt-get更新
sudo apt-get install unity
  • 您可以在Compiz中的Unity插件(使用ccsm)中启用“显示桌面图标”设置,以在左侧的启动器上获取图标:

    在此处输入图片说明

  • 如果/在发布新的Unity更新时,Update Manager将自动下载它。我将尝试“修复”更新,并尽快将其放入PPA。请在此答案中添加评论,以提醒我是否升级并在Switcher中再次出现“显示桌面”!

你是怎么做到的?

我修改了Unity Source。它包括两个步骤:

  1. 注释掉in的第900行plugins/unityshell/src/LauncherController.cpp,默认情况下,它将“ Show Desktop”图标显示到切换台:
// results.push_back(pimpl-> desktop_icon_);
  1. 将第1638行改成plugins/unityshell/src/unityshell.cpp

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

      如果(!results.size()== 0))
    • 虽然Alt-Tab切换器图标列表以前至少为1(显示桌面图标),但现在为0,我们需要对其进行修改以仅在列表中至少有一项(即位于至少一个正在运行的应用)。

看起来当前的unity版本是5.20,而您的版本是5.14。我正在使用12.04,因此自定义版本似乎是我唯一的选择。感谢您概述。如果您没有时间进行构建,也许我会尝试。
isaaclw 2013年

我花了一些时间自己重新编译为5.20。我在下面张贴了我的答案,因为它没有我想象的那么直接:askubuntu.com/a/395031/17065
isaaclw 2013年

不适用于12.04
Timmy

12.04及更高版本,看下一个答案
Postadelmaga 2015年

103

13.04及更高版本

对于13.04、13.10和14.04,要启用或禁用应用程序切换器中的“显示桌面”选项,可以使用unity-tweak-tool

安装统一调整工具

图片

12.10

对于12.10,已将设置添加到CCSM,以启用或禁用应用程序切换器中的“显示桌面”选项。

在终端中运行以下命令以安装CCSM:

sudo apt-get install compizconfig-settings-manager

现在打开CCSM并转到Ubuntu Unity插件。

Ubuntu Unity插件

切换到“ 切换台”选项卡。然后在切换器选项中选中“ 禁用显示桌面 ”旁边的复选框。

禁用显示桌面

多田! 在应用程序切换器中不再需要“显示桌面”!


谢谢。我已经使用Unity Tweak Tool禁用了它,但是您的回复将我发送到了那里。Ubunt 13.10。(由于有时会切换到桌面,因此将其禁用)
2013年

unity-tweak-tool也可以在13.10中使用。
eswald 2013年

3
太棒了,可以在14.04中使用,谢谢!
Kostiantyn Rybnikov 2014年

2
unity-tweak-tool在15.04 ..工作
Jean Jordaan 2015年

1
unity-tweak-tool也在16.04中工作
克里斯,克里斯,

8

在14.04中,我能够在CompizConfig设置管理器中完成此任务。

sudo apt-get install compizconfig-settings-manager

通过访问:

  • 宽阔,白色,右侧区域中列表的“桌面”部分→
  • “ Ubuntu Unity插件”项→
  • “切换台”标签→
  • “禁用切换台中的显示桌面”项。

这是直接来自回购协议的默认未定制CCSM。


1
同样适用于16.04,谢谢!
nerdherd


1

因此,我不确定这是否对您有帮助,但是在使用Unity 2D时,由于没有图形驱动程序而使我陷入了gnome后备状态。然后不满意,我回到了Unity界面。我不再在ALT + TAB应用程序切换器中显示“显示桌面”。我认为这是Gnome界面在左下角设置的副作用,当我切换回去时,不再使用它。似乎为我工作...值得一试。


1
感谢您分享您的体验。这种方法有多危险?我承受不起危害工作环境稳定性的负担。
大卫·多索

对我来说,除此之外我没有任何问题,但是我也不是100%肯定是这样。如果您拥有VM,则可以很好地检验该理论,我还对面板进行了很多编辑,删除并添加了诸如工作区切换器和垃圾桶图标之类的项目,以代替10.10的真实侏儒感觉。我认为风险不高,但是值得一试。如果您真的很担心,可以备份所有内容,但是它不应该做任何异常的事情。我可能也刚遇到一个幸运的错误。我不知道,我也会自己测试一下。看看我能为您做什么。
esnowrackley

0

警告:我使它只能工作一次。重新启动后,我有两个实例正在运行,但无法弄清楚原因或方式。杀死它们是行不通的,卸载重新安装也无济于事。

我通过安装13.10解决了它。我将使用此处列出的其他修复程序。

我无法在12.04中使它正常工作,在另一个答案中提供的软件包还不够新(版本5.14),并且该指南并不是很完美。(尽管它非常有帮助)这是我设法为Unity 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,但我想尝试首先链接该文件。我放弃。

我想撤消最好的选择是重新安装unity,这会将标准文件放在首位。

6)替换文件:

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

7)重新安装统一问候器。显然,rsynced文件破坏了统一性。显然,这需要获得统一的运行。

sudo apt-get install --reinstall unity-greeter

0

如果您dconf用于管理Unity设置,则此设置的路径(通过进行检查dconf watch /)为:

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

设置为true,桌面将作为一个alt-tab选项被删除。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.