}
function widget:update_widget()
+ if not self._currentsong then
+ self._textbox.text = ""
+ return
+ end
local text = ""
local artist = self._currentsong.artist
local title = self._currentsong.title
end
local function sec_to_min(sec)
- m, s = math.modf((sec or 0.0) / 60)
+ local m, s = math.modf((sec or 0.0) / 60)
return string.format('%d:%02d', m, math.floor(s * 60))
end
function widget:get_info()
local status, song = self._status, self._currentsong
if not status.state then return nil end
+ if not status.song then return nil end
local info = {}
info.title = status.state .. " " .. status.song .. "/" .. status.playlistlength .. " " .. song_duration(status.elapsed, status.duration)
self._status = status
local table = self:get_info()
if not self._notification then return end
+ if not table then return end
naughty.replace_text(self._notification, table.title, table.text)
end)
end
conn:send("currentsong", function(_, song)
self._currentsong = song
+ if not song then
+ self:update_widget()
+ return
+ end
conn:albumart(song.file, function(_, art)
self._albumart = art
self:update_widget()