2015-05-20 2 views
1
if (c.class == "Google-chrome") then 
    c.icon = capi.image ("/home/art-attack/.config/awesome/icons/chrome.png") 
end 

Я попробовал это, но я всегда получал ошибку т.е. попытки вызвать поле «изображение» (нилъ значения)Как настроить пользовательский значок любого клиента для списка задач в awesomeWM v3.5.6?

{ rule = { class = "Google-chrome" }, 
    properties = { icon = beautiful.icon_chrome } }, 

Тогда я нашел другой способ использовать свойства значка в ужасны. правила, и это сработало, но не изменило значок, вместо этого отключил значок этого клиента.

ответ

0
if c.class == "Google-chrome" then 
    local icon = gears.surface("path/to/chrome.png") 
    return text, bg, bg_image, icon 
end 

Добавьте этот код перед

if capi.client.focus == c then 
+0

работает нормально .. но текст недействителен ** <Недопустимый текст> ** ! [IMAGE] (http://oi60.tinypic.com/142gdbl.jpg) – talk2arpan

+0

похоже, t инициализировать себя .. поэтому я взял этот код до этой строки 'return text, bg, bg_image, not tasklist_disable_icon и c.icon или nil' где текст был инициализирован первым, и он работал без каких-либо проблем ... thkx для ur reply – talk2arpan

1

Чтобы исправить свою первую попытку, попробуйте следующее:

if c.class == "Google-chrome" then 
    local icon = gears.surface("path/to/chrome.png") 
    c.icon = icon._native 
    icon:finish() 
end 

Линия с icon:finish() не является необходимым, но оно существует, чтобы убедиться, что вы не оптимизировать этот код. Существует некоторая черная магия избегания мусора, которую вы не хотите знать, но рассказ: никогда не используйте _native, если у вас уже есть сама поверхность, сохраненная в переменной.

+0

еще я получил ошибку ** попытка индекса глобальной «Шестерни» (нилъ значение) ** – talk2arpan

+0

ооо .. Сори я забыл добавить ** местного gears = require ("gears") ** в начале Thankx много работает отлично, но отображается ошибка, т. е. **/usr/share/lua/5.1/lgi/record.lua: 62: C переполнение стека * * – talk2arpan