fixed bluetooth and taskbar, tasklist icons

This commit is contained in:
Kievits Rene
2022-04-18 03:05:43 +02:00
parent 1ceec3a7d9
commit f8c31d19f2
17 changed files with 182 additions and 271 deletions

View File

@@ -1,7 +1,7 @@
local awful = require("awful")
-- Autostart programs
--awful.spawn.with_shell("~/.screenlayout/single_screen.sh")
awful.spawn.with_shell("picom --experimental-backends")
awful.spawn.with_shell("xfce4-power-manager")
awful.spawn.with_shell("light-locker --lock-on-suspend --lock-on-lid &")
function Autostarter(table)
for i, t in ipairs(table) do
awful.spawn.with_shell(t);
end
end

View File

@@ -1,53 +1,56 @@
-----------------------------------------------------
-- Helper to get icons from a program/program name --
-----------------------------------------------------
local naughty = require("naughty")
-- tries to find a matching file name in /usr/share/icons/THEME/RESOLUTION/apps/ and if not found tried with first letter
-- as uppercase, this should get almost all icons to work with the papirus theme atleast
-- TODO: try with more icon themes
function Get_icon(theme, c, is_steam)
if theme and c then
local clientName
if theme ~= nil and c ~= nil then
local clientName = c.name
-- TODO: Access steamdb api to fetch the clienticon if there is no icon found in this theme
if is_steam then
clientName = "steam_icon_" .. tostring(c) .. ".svg"
else
if type(c) == type("") then
clientName = string.lower(c) .. ".svg"
else
if c.class ~= nil then
clientName = string.lower(c.class) .. ".svg"
elseif clientName ~= nil then
clientName = string.lower(c.name) .. ".svg"
else
return
end
end
local resolutions = {"128x128", "96x96", "64x64", "48x48", "42x42", "32x32", "24x24", "16x16"}
local resolutions = { "128x128", "96x96", "64x64", "48x48", "42x42", "32x32", "24x24", "16x16" }
for i, res in ipairs(resolutions) do
local iconDir = "/usr/share/icons/" .. theme .. "/" .. res .."/apps/"
local iconDir = "/usr/share/icons/" .. theme .. "/" .. res .. "/apps/"
local ioStream = io.open(iconDir .. clientName, "r")
if ioStream ~= nil then
return iconDir .. clientName
else
clientName = clientName:gsub("^%l", string.upper)
iconDir = "/usr/share/icons/" .. theme .. "/" .. res .."/apps/"
iconDir = "/usr/share/icons/" .. theme .. "/" .. res .. "/apps/"
ioStream = io.open(iconDir .. clientName, "r")
if ioStream ~= nil then
if ioStream ~= nil then
return iconDir .. clientName
elseif type(c) ~= type("") then
local naughty = require("naughty")
if pcall(
function ()
function()
if c:Get_icon(1) then
error("icon error")
error("icon error")
else
return c:Get_icon(1)
end
end
end
) then
return nil
end
return "/usr/share/icons/Papirus-Dark/128x128/apps/Zoom.svg"
end
end
end
end
return nil
if c.icon == nil then
return "/usr/share/icons/Papirus-Dark/128x128/apps/application-default-icon.svg"
else
return c.icon
end
end