Evite el robo de foco en Awesome WM, especialmente desde Skype

8

Cuando uso KDE con Awesome WM y recibo un nuevo mensaje en Skype, Plasma Desktop roba el foco. Esto me vuelve loco ya que no puedo seguir escribiendo en mi ventana actual. ¿Hay alguna manera de evitar esto para cualquier ventana abierta?

Parece que Awesome WM o Plasma previenen ese robo de foco, pero el conmutador de ventana de Plasma aún resalta la ventana. Por lo tanto, la barra de control de Plasma (la que está en la parte inferior) no está oculta y, por lo tanto, roba el foco en sí.

Cuando hice un killall plasma-desktop, el robo de foco se detuvo. Sin embargo, también maté plasma-nmy otras cosas que me gustaría usar.

Martin Ueding
fuente

Respuestas:

1

El problema real no era Skype robando el foco. Skype acaba de notificar al administrador de ventanas que tenía alguna actividad. Entonces Awesome WM mostró la etiqueta (escritorio virtual) como actividad. Pero entonces el panel de Plasma de KDE todavía contenía una lista de las ventanas activas. En ese widget de KDE, se cambió la ventana con actividad y Awesome WM puso el foco en el panel de Plasma de KDE.

Eliminé la lista de ventanas del panel Plasma y nunca más volví a molestarme.

Martin Ueding
fuente
0

KDE

¿No puede cambiar a "hacer clic para enfocar" en KDE para resolver esto?

   ss de kde

Increíble

Encontré este Wiki que analiza lo que parece su problema y ofreció esta solución. El tema wiki se titula: Complementos de solución que roban el foco del teclado .

xdotool

Hay un error muy antiguo en Firefox que permite que los complementos (Flash, Acrobat, etc.) roben todos los atajos de teclado para la ventana. Esta es una solución simple para devolver el foco del teclado a la ventana de nivel 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 solución alternativa debe xdotoolestar instalada.

mover el mouse

Por ejemplo, use Move Mouse para mover el puntero del mouse a una ubicación segura (cualquier área sin enlaces o elementos Flash incrustados), luego llame a la función a continuación para simular un clic del mouse (que recupera el enfoque).

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

Referencias

slm
fuente