Evite o roubo de foco no Awesome WM, especialmente do Skype

8

Quando uso o KDE com o Awesome WM e recebo uma nova mensagem no Skype, o Plasma Desktop rouba o foco. Isso me deixa louco, pois não posso continuar digitando na minha janela atual. Existe alguma maneira de evitar isso em qualquer janela aberta?

Parece que esse roubo de foco é impedido pelo Awesome WM ou Plasma, mas o alternador de janelas do Plasma ainda destaca a janela. Portanto, a barra de controle do plasma (a da parte inferior) não está oculta e, portanto, rouba o foco.

Quando fiz um killall plasma-desktop, o roubo de foco parou. No entanto, eu também matei plasma-nme outras coisas que gostaria de usar.

Martin Ueding
fonte

Respostas:

1

O problema real não era o Skype roubando o foco. O Skype acabou de notificar o gerenciador de janelas que ele tinha alguma atividade. O Awesome WM mostrou a tag (área de trabalho virtual) como tendo atividade. Mas então o painel Plasma do KDE ainda continha uma lista das janelas ativas. Nesse widget do KDE, a janela com atividade foi alterada e o Awesome WM colocou o foco no painel Plasma do KDE.

Tirei a lista de janelas do painel Plasma e nunca mais me incomodei.

Martin Ueding
fonte
0

KDE

Você não pode mudar para "clique para focar" no KDE para resolver isso?

   ss do kde

Impressionante

Encontrei este Wiki que discute o que parece ser o seu problema e ofereceu esta solução alternativa. O tópico do wiki é intitulado: Plugins de solução alternativa que roubam o foco do teclado .

xdotool

Existe um bug de longa data no firefox que permite que plugins (Flash, Acrobat, etc.) roubem todos os atalhos de teclado da janela. Esta é uma solução simples para retornar o foco do teclado para a janela de nível superior:

código

   -- 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),

NOTA: Esta solução alternativa requer xdotoola instalação.

mover o mouse

Por exemplo, use Mover mouse para mover o ponteiro do mouse para um local seguro (qualquer área sem links ou elementos Flash incorporados) e chame a função abaixo para simular um clique do mouse (que traz o foco de volta).

código

-- 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),

Referências

slm
fonte