我将 Opera 设置为默认浏览器,但 Firefox 也是如此。在 Liferea 中打开链接时,链接会在外部浏览器中打开,并且浏览器会获得焦点。我想在后台打开链接(这样浏览器就不会获得焦点)。
唯一的解决方案是在 CCSM 的常规选项的“聚焦和提升行为”选项卡中将“聚焦预防级别”设置为“正常”。但这会给其他事情带来麻烦。您还有其他想法可以防止新窗口获得焦点吗?
我在 11.10 上使用 Unity。
答案1
我认为这是一个错误,所以我报告了它。它以前可以与 Gnome 2 一起使用,现在它可以与 Gnome Shell 和 Gnome 3 fallback 一起使用。我怀疑是 compiz,但我又知道什么呢。
答案2
右击 Liferea 的窗口标题栏并选择“始终在最前面”。现在您的所有链接都将在后台打开。
答案3
从 dash 打开 CompizConfig 设置管理器 (CCSM)
在下面常规选项,
放自动加注=非常高
和延迟=500。
所有新窗口将在后台打开!
答案4
单独的 CCSM 自动提升在 ubuntu 10.04 或 12.04 中不起作用..所以我不得不创建这个脚本:
#!/bin/bash
delay=0.5
while true; do
windowId=`xdotool getwindowfocus`
xdotool getwindowname $windowId
xdotool windowactivate $windowId;
sleep $delay;
done
请注意,这个简单的脚本适用于所有窗口,而不仅仅是您的浏览器。但总体来说,它很好,因为您不会错过点击新打开的窗口...
此脚本取决于您是否将“焦点预防级别”设置得足够高,以便新打开的窗口不会获得焦点。它至少在 Ubuntu 10.04 和 12.04 上运行,但应该可以在任何地方运行……如果它对您不起作用,请说出来,我们可以一起思考!
这是一个无限循环(使用 ctrl+c 中断),它将“激活”具有焦点(键盘输入的焦点)的窗口。因此,它将使聚焦窗口每 0.5 秒“跳”到前台(您可以根据需要/喜好降低或增加延迟值)。
因此,所有新打开的应用程序和窗口仍将在前台打开,但会被具有焦点的窗口立即隐藏!
需要说明的是,它们不会在后台打开,但此脚本将提供几乎相同的效果。“几乎”是因为如果您运气不好,您仍然可以在焦点窗口被置于前台之前单击新打开的窗口,这将使新窗口成为焦点窗口...降低延迟将有助于防止这种情况发生,但会消耗更多 CPU,我认为小于 0.1 并不好,但您必须测试以查看哪种方法更适合您...
PS:你的xdotool版本必须支持这些命令:getwindowfocus、getwindowname、windowactivate