如何从Alt-Tab(应用程序)切换器中删除“Show Desktop”?
是否可以从Alt + Tab应用程序切换器中删除“显示桌面”?
可以办到!
我已经上传了12.04的Unity版本来修复此问题(在Alt-Tab切换器中没有显示桌面)。
- 要安装 ,请打开终端并:
sudo apt-add-repository ppa:izx / askubuntu -y sudo apt-get update sudo apt-get install unity
-
您可以在Compiz的Unity插件中启用“显示桌面图标”设置(使用
ccsm
)以获取左侧启动器上的图标: -
如果/当发布新的Unity更新时,Update Manager将自动下载它。 我将尝试“修复”更新并尽快将其放入PPA中; 如果您升级并在切换器中重新出现“显示桌面”,请在此答案中添加注释以提醒我!
你是怎么做到的?
我修改了Unity Source。 它包括两个步骤:
- 注释掉
plugins/unityshell/src/LauncherController.cpp
第900行,默认情况下将“Show Desktop”图标添加到切换器:
// results.push_back(pimpl-> desktop_icon_);
-
在
plugins/unityshell/src/unityshell.cpp
更改第1638行:if(!(results.size()== 1 && results [0] - > GetIconType()== AbstractLauncherIcon :: IconType :: TYPE_DESKTOP))
至
if(!results.size()== 0))
- 虽然Alt-Tab切换器图标列表之前至少有1个(show-desktop图标),但现在它为0,我们需要修改它以仅在列表中至少有一个项目时显示切换器(即至少有一个应用运行)。
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插件。
切换到切换器选项卡。 然后勾选切换器选项中禁用显示桌面旁边的复选框。
在14.04,我能够在CompizConfig设置管理器中完成此任务。
sudo apt-get install compizconfig-settings-manager
访问:
- “桌面”部分列在宽,白,右区域→
- “Ubuntu Unity插件”项目→
- “切换器”选项卡→
- “禁用切换器中的显示桌面”项。
这是一个默认的,非自定义的CCSM直接来自回购。
一种选择可能是恢复到11.10之前Alt + Tab的行为 。
我意识到这有点激烈,但它可能总比没有好。
所以,我不确定这对你是否有任何帮助,但是在使用Unity 2D时,由于没有使用图形驱动程序,我潜入了gnome的后退。 然后不满意,我回到了Unity界面。 我不再在ALT + TAB应用程序切换器中显示“显示桌面”。 我相信这是Gnome界面的副作用,它设置在左下角,当我换回时,我不再拥有它。 似乎为我工作……值得一试。
警告:我让这个工作一次。 当我重新启动时,我有两个统一运行的实例,并且无法弄清楚为什么或如何。 杀死他们没有用,卸载重新安装没有帮助。
我通过安装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 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 # 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)重新安装unity-greeter。 显然文件rsynced打破了unity-greeter。 这显然需要团结运行。
sudo apt-get install --reinstall unity-greeter
如果您使用dconf
来管理Unity设置 ,那么此设置的路径(通过dconf watch /
检查)是:
/org/compiz/profiles/unity/plugins/unityshell/disable-show-desktop
将此设置为true
,桌面将作为alt-tab
选项删除。