防止窗口窃取焦点

防止窗口窃取焦点

我正在使用 Maverick 并启用了 Compiz。

我搜索过 AskUbuntu 和 Google。AskUbuntu 上没有关于此主题的任何内容,Google 上找到的所有信息都是几年前的。

我正在进行浏览器测试,并且我的测试不断产生新的 Firefox 窗口。问题是,当窗口产生时,它会获得焦点。这非常烦人,因为我通常正在其他地方输入内容。这不仅发生在我的测试中,而且是我遇到的最常见的情况。有时我的 IDE 会在发生某些特殊情况时(例如当编译完成时)决定获得焦点,然后我会在代码中找到我输入的 IM 消息片段。这让我抓狂。我查看了 Gnome 设置和 Compiz 设置,但找不到阻止这种情况发生的方法。

有谁知道有什么方法可以防止应用程序在打开时抢占焦点吗?我宁愿让任务栏闪烁或用其他东西来引起我的注意。

答案1

设置位于CompizConfig > 常规 > 聚焦与提升行为如上所述。窗口匹配规则非常重要。

答案2

这不是你应该全局配置的东西。也就是说,你真的不想新的窗口来聚焦:你不想测试窗口获取焦点。要实现这一点,请使用 Compiz窗口规则插件可防止所有“测试” Firefox 窗口获得焦点。

您需要编写一条规则来仅识别“测试” Firefox 实例。 如果它们的标题中都有特定字符串,那就行得通。 否则,您可以使用它wmctrl来设置WM_ICON_NAMEX 属性。(我不知道如何轻松地为 Firefox 设置 X 属性。如果其他人知道,请加入讨论!)

答案3

如果您大部分时间都在一个窗口中工作,您可以右键单击标题栏并告诉窗口始终位于顶部...这不是一个完美的解决方案,但您可以在完成后遮蔽窗口,或将其最小化然后返回到它...

答案4

gconf-editor您也可以在加拿大华人商会已安装。导航到/apps/compiz/general/screen0/options/focus_prevention_level键并将其值设置为4

对于某些人来说,4 太高了。Eclipse 用户会发现,当设置为 4 时,各种对话框无法正确获取键盘焦点,但如果设置为 3 则可以。

相关内容