Como posso ter apenas ícones de aplicativos na lista de tarefas do incrível 3.5?

3

Em um incrível 3,4, havia uma maneira de fazer isso:

mytasklist[s] = awful.widget.tasklist(function(c)
  local task = { awful.widget.tasklist.label.currenttags(c, s) }
  return '', task[2], task[3], task[4]
end, mytasklist.buttons)

Mas no impressionante 3.5 que não funciona mais, alguma solução?

Obrigado

    
por milarepa 25.08.2013 / 08:20

2 respostas

2

No awesome 3.5 isso não funciona mais, já que as funções de rótulo (como a função anônima em sua linha modificada) foram substituídas por funções de filtro que funcionam de maneira diferente. Do ponto de vista de um usuário (isto é, modificando apenas rc.lua e theme.lua), não vejo a possibilidade de alterar ou remover o texto da lista de tarefas. Se você realmente quiser isso, uma solução seria modificar o arquivo da lista de tarefas:

--- a/usr/share/awesome/lib/awful/widget/tasklist.lua
+++ b/usr/share/awesome/lib/awful/widget/tasklist_no_names.lua
@@ -61,10 +61,12 @@ local function tasklist_label(c, args)
         if c.maximized_vertical then name = name .. maximized_vertical end
     end

-    if c.minimized then
-        name = name .. (util.escape(c.icon_name) or util.escape(c.name) or util.escape("<untitled>"))
-    else
-        name = name .. (util.escape(c.name) or util.escape("<untitled>"))
-    end
+    if theme.tasklist_show_names then
+        if c.minimized then
+            name = name .. (util.escape(c.icon_name) or util.escape(c.name) or util.escape("<untitled>"))
+        else
+            name = name .. (util.escape(c.name) or util.escape("<untitled>"))
+        end
+    end
     if capi.client.focus == c then
         bg = bg_focus

e adicionando uma opção para alternar isso no seu arquivo de tema:

+++ theme.lua
+ theme.tasklist_show_names = false
    
por 02.09.2013 / 02:08
4

Para manter os ícones e remover o texto na lista de tarefas do 3.5, você pode escrever uma função personalizada que pode ser usada como argumento para o arquivo awful.widget.tasklist no seu arquivo rc.lua. Desta forma, você não precisa alterar nada nos incríveis arquivos 'fonte'

Defina a seguinte função em algum lugar no topo do seu arquivo rc.lua ou inclua-a

function myupdate(w, buttons, label, data, objects)
    w:reset()
    local l = wibox.layout.fixed.horizontal()
    for i, o in ipairs(objects) do
        local cache = data[o]
        if cache then
            ib = cache.ib
        else
            ib = wibox.widget.imagebox()
            ib:buttons(common.create_buttons(buttons, o))

            data[o] = {
                ib = ib
            }
        end

        local text, bg, bg_image, icon = label(o)
        ib:set_image(icon)
    l:add(ib)
        --w:add(ib)
   end
   w:add(l)
end

e depois adicioná-lo à sua awful.widget.tasklist como argumento

mytasklist[s] = awful.widget.tasklist(s, awful.widget.tasklist.filter.currenttags, mytasklist.buttons, nil, myupdate)
    
por 11.12.2013 / 17:52

Tags