如何强制一个窗口始终保持在窗口堆栈的后面?我想运行固定在桌面上的 FireFox,并防止其他窗口出现在其后面。
答案1
右键单击窗口标题并从下拉菜单中选择“保持在其他窗口下方”是否可以解决您的问题?我目前无法访问 Unity 环境,但我记得该选项一直在那里。
更新:好的,经过一番检查,我发现该选项存在于 KDE、XFCE 和 LXDE(分别是 Kubuntu、Xubuntu 和 Lubuntu)中,但在 Gnome 中被禁用/隐藏,即使在旧版本中也是如此。
此外,GTK 似乎确实有所需的功能,因此这只是 Gnome 开发人员的偏好问题,他们不愿意暴露“不必要的”或很少使用的设置(正如他们所说,“设置会害死小猫”)。可能存在或不存在某个隐藏的键来启用菜单项。
更新2:我本来想建议你写一个小程序,用以下代码来找到一个窗口:gtk_get_window_at_pointerAPI 调用并将其设置为“始终在底部”gdk_window_set_keep_belowAPI 调用(如果您不介意编程的话),但似乎一切都已经为我们写好了:有一个名为 Devil's Pie(以及 GDevilsPie)的程序,可在 Ubuntu 存储库中找到。该程序允许您编写一些匹配打开的窗口的规则并对其执行一些操作(移动到特定工作区、最大化、最小化等)。
这是文档
以下是一篇文章具体讨论如何使用 Devil's Pie 或另一个名为wmctrl
为了防止链接失效:
例如,下面的第一个代码片段将切换用鼠标选中的任何窗口的全屏状态。第二个示例几乎完全符合我们的要求,它切换活动窗口的始终处于底部状态。
wmctrl -r :SELECT: -b toggle,fullscreen wmctrl -r :ACTIVE: -b toggle,below
答案2
如果还没有安装 CompizConfig 设置管理器
sudo apt-get install compizconfig-settings-manager
在 Dash 中搜索 ccsm 来运行它
前往窗口规则Compiz 中的插件。在火柴标签,添加类别=Firefox到以下入口。