luakit + awesome wm: faire fonctionner youtube en plein écran

8

J'utilise Arch Linux sur ma box. J'utilise le gestionnaire de fenêtres génial, qui est un WM en mosaïque, mais permet également les fenêtres flottantes.

L' entrée Awesome d'ArchWiki me dit de mettre ce qui suit dans mon impressionnant rc.luapour faire flotter le plein écran de YouTube par défaut:

{ rule = { instance = "plugin-container" },
  properties = { floating = true } },

Pourtant, cela ne semble pas fonctionner. J'ai essayé la règle qu'ils ont suggérée pour le chromiumnavigateur et cela a fonctionné, ce qui m'amène également à croire que l'approche est correcte.

Je devine que le "plugin-container"n'est pas le spécificateur correct pour le navigateur Je me sers: luakit.

Alors, voici la question: quel est le bon instancespécificateur pour que les luakitvidéos YouTube soient reconnues par les awesomerègles?

romeovs
la source

Réponses:

4

C'est un peu délicat:

Vous avez raison "plugin-container"ressemble tout à fait à Firefox.

Malheureusement, vous ne pouvez pas distinguer le client yt nouvellement généré, "instance"car il s'agit simplement d'une chaîne vide, qui correspond à plus de clients que vous le souhaitez.

J'ai trouvé un autre moyen: la "class"propriété de ce client est "Luakit"au lieu de "luakit"pour les clients luakit normaux. Une règle correspondante pourrait donc ressembler à ceci:

{ rule = { class = "Luakit" },
   properties = { floating = true } },

Mais cette distinction semble susceptible d'être modifiée à l'avenir.

Vous pouvez en savoir plus sur les propriétés des clients en ajoutant le code suivant à votre rc.lua

mytimer=timer{timeout=2}
mytimer:add_signal("timeout",
        function () for i,c in ipairs(client.get(mouse.screen)) do
                        if c:tags()[mouse.screen]== awful.tag.selected(mouse.screen) then
                                naughty.notify({title=c.class,text=c.role})
                                naughty.notify({title=c.class,text=c.instance})
                                end
                    end
        end)
mytimer:start()
Tyrannodogg
la source
1

Depuis Awesome 3.5, la add_signal()fonction est obsolète et remplacée par la connect_signal()fonction (voir Awesome 3.4 à 3.5 - Signaux ).

Cette légère modification du code de @ Tyrannodogg fonctionnera:

mytimer=timer{timeout=2}
mytimer:connect_signal("timeout",
    function () for i,c in ipairs(client.get(mouse.screen)) do
        if c:tags()[mouse.screen] == awful.tag.selected(mouse.screen) then
            naughty.notify({title=c.class,text=c.role})
            naughty.notify({title=c.class,text=c.instance})
        end
    end
end)
mytimer:start()
Daishi
la source