AwesomeWM 在从 rc.lua 更改墙纸时显示加载图标
AwesomeWM shows loading icon when changing wallpaper from rc.lua
我正在尝试做一些类似于 Compiz effect 我非常喜欢 Reddit 的事情。我调整了 rc.lua
的方式,当按下 Super+R 时,每个客户端都被隐藏,墙纸变成模糊的(存储在另一个目录中)并且 Rofi 生成:
所以现在我可以从这里开始:
到这里:
如何复制:
我为此使用的代码如下:
wallpaper.sh: 这个脚本允许我从命令行更改我的墙纸。它还创建了一个模糊版本的墙纸,以便在我每次调用 Rofi 时使用。
#!/bin/bash
if [[ != "" ]] && [ -f ]; then
cp /usr/local/share/awesome/themes/modded/background.png
convert -blur 0x6 /usr/local/share/awesome/themes/modded/background-blurred.png
feh --bg-fill
else
echo 'Invalid file!'
fi
rc.lua 函数: 此函数处理击键“Mod4+R”,隐藏所有客户端,模糊壁纸并生成 Rofi:
awful.key({ modkey }, "r",
function ()
myscreen = awful.screen.focused()
commandPrompter = "rofi -show run -normal-window"
blur = "feh --bg-scale /usr/local/share/awesome/themes/modded/background-blurred.png"
unblur = "feh --bg-fill /usr/local/share/awesome/themes/modded/background.png"
for _, t in ipairs(mouse.screen.tags) do
if client.name ~= "rofi" then
awful.tag.viewtoggle(t)
end
end
myscreen.mywibox.visible = false
awful.spawn(commandPrompter)
awful.spawn(blur) -- Causes mouse to change to loading icon!!
end),
rc.lua 函数 2: 这个函数位于我的 rc.lua
文件的最后,每当名为“rofi”的客户端关闭时激活(抛出一个 unmanage
信号)。该函数将使一切 return 恢复正常,消除墙纸模糊并切换客户端和 wibox。
--Makes the wibar appear when Rofi exits.
client.connect_signal("unmanage", function(c)
myscreen = awful.screen.focused()
if c.class == "Rofi" then
for _, t in ipairs(mouse.screen.tags) do
awful.tag.viewtoggle(t)
end
awful.spawn(unblur) -- Causes mouse to change to loading icon!!
myscreen.mywibox.visible = true
end
end)
按 Mod4+R 会导致问题出现。
重要细节: 奇怪的是,Gnome 屏幕截图不会显示 'loading' 指针,将其转换为常规箭头。我不得不从我的 phone 中拍照,以便向您显示 真实的 指针。抱歉!
您需要添加false
作为awful.spawn
的第二个参数。这会禁用协议命令应该执行以通知 window 管理器他们已完成初始化。
我正在尝试做一些类似于 Compiz effect 我非常喜欢 Reddit 的事情。我调整了 rc.lua
的方式,当按下 Super+R 时,每个客户端都被隐藏,墙纸变成模糊的(存储在另一个目录中)并且 Rofi 生成:
所以现在我可以从这里开始:
到这里:
如何复制:
我为此使用的代码如下:
wallpaper.sh: 这个脚本允许我从命令行更改我的墙纸。它还创建了一个模糊版本的墙纸,以便在我每次调用 Rofi 时使用。
#!/bin/bash
if [[ != "" ]] && [ -f ]; then
cp /usr/local/share/awesome/themes/modded/background.png
convert -blur 0x6 /usr/local/share/awesome/themes/modded/background-blurred.png
feh --bg-fill
else
echo 'Invalid file!'
fi
rc.lua 函数: 此函数处理击键“Mod4+R”,隐藏所有客户端,模糊壁纸并生成 Rofi:
awful.key({ modkey }, "r",
function ()
myscreen = awful.screen.focused()
commandPrompter = "rofi -show run -normal-window"
blur = "feh --bg-scale /usr/local/share/awesome/themes/modded/background-blurred.png"
unblur = "feh --bg-fill /usr/local/share/awesome/themes/modded/background.png"
for _, t in ipairs(mouse.screen.tags) do
if client.name ~= "rofi" then
awful.tag.viewtoggle(t)
end
end
myscreen.mywibox.visible = false
awful.spawn(commandPrompter)
awful.spawn(blur) -- Causes mouse to change to loading icon!!
end),
rc.lua 函数 2: 这个函数位于我的 rc.lua
文件的最后,每当名为“rofi”的客户端关闭时激活(抛出一个 unmanage
信号)。该函数将使一切 return 恢复正常,消除墙纸模糊并切换客户端和 wibox。
--Makes the wibar appear when Rofi exits.
client.connect_signal("unmanage", function(c)
myscreen = awful.screen.focused()
if c.class == "Rofi" then
for _, t in ipairs(mouse.screen.tags) do
awful.tag.viewtoggle(t)
end
awful.spawn(unblur) -- Causes mouse to change to loading icon!!
myscreen.mywibox.visible = true
end
end)
按 Mod4+R 会导致问题出现。
重要细节: 奇怪的是,Gnome 屏幕截图不会显示 'loading' 指针,将其转换为常规箭头。我不得不从我的 phone 中拍照,以便向您显示 真实的 指针。抱歉!
您需要添加false
作为awful.spawn
的第二个参数。这会禁用协议命令应该执行以通知 window 管理器他们已完成初始化。