防止在Awesome WM中窃取焦点,尤其是从Skype中窃取


8

当我将KDE与Awesome WM结合使用并在Skype中收到一条新消息时,Plasma Desktop将失去重点。这使我发疯,因为我无法继续在当前窗口中输入内容。有什么办法可以防止任何打开的窗口出现这种情况?

看起来,这样的焦点窃取是由Awesome WM或Plasma阻止的,但是Plasma的窗口切换器仍会突出显示窗口。因此,等离子控制杆(位于底部的那个)未被隐藏,因此本身就失去了焦点。

当我执行时killall plasma-desktop,焦点窃取停止了。但是,我也杀死plasma-nm了我想使用的其他东西。

Answers:


1

实际的问题不是Skype抢了重点。Skype刚通知窗口管理器它有活动。然后,Awesome WM将标签(虚拟桌面)显示为活动。但是随后,KDE Plasma面板仍包含活动窗口的列表。在该KDE小部件中,具有活动的窗口被更改,然后Awesome WM将焦点放在KDE Plasma面板上。

我从等离子面板中删除了窗口列表,再也没有打扰过。


0

KDE

您不能在KDE中切换到“单击以焦点”来解决此问题吗?

   的SDE

太棒了

我确实找到了这个Wiki,该Wiki讨论了听起来像您的问题,并提供了这种解决方法。维基主题的标题为:变通办法插件占用键盘焦点

xdotool

firefox中存在一个非常悠久的错误,该错误使插件(Flash,Acrobat等)可以窃取该窗口的所有键盘快捷键。这是一种将键盘焦点返回到顶级窗口的简单解决方法:

   -- Escape from keyboard focus trap (eg Flash plugin in Firefox)
    awful.key({ modkey, "Control" }, "Escape", function ()
         awful.util.spawn("xdotool getactivewindow mousemove --window %1 0 0 click --clearmodifiers 2")
    end),

注意:此替代方法需要xdotool安装。

移动鼠标

例如,使用“ 移动鼠标”将鼠标指针移动到安全位置(没有链接或嵌入Flash元素的任何区域),然后调用下面的函数来模拟鼠标单击(使焦点返回)。

-- Simulate mouse click
local function simulateClick()
    root.fake_input("button_press", 1)
    root.fake_input("button_release", 1)
end

-- Bind it to a key
    awful.key({ modkey, }, "n", function() simulateClick() end),

参考文献

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.