X-Git-Url: https://git.rmz.io/dotfiles.git/blobdiff_plain/f8c02273484224b9133f77606f0016fb6cdaff4b..d44a0c9fe7354ce52706219c8b5d6b4edd47198f:/awesome/widgets/mpd_widget.lua diff --git a/awesome/widgets/mpd_widget.lua b/awesome/widgets/mpd_widget.lua index 2c6ab78..d962893 100644 --- a/awesome/widgets/mpd_widget.lua +++ b/awesome/widgets/mpd_widget.lua @@ -90,19 +90,27 @@ function widget:popup_show() end function widget:popup_hide(delay) + local function destroy() + if self._hover then return end + if not self._notification then return end + naughty.destroy(self._notification) + self._notification = nil + end + + if not delay then + destroy() + return + end + if self._hide_timer and self._hide_timer.started then + self._hide_timer.timeout = delay self._hide_timer:again() else self._hide_timer = timer( { timeout = delay , autostart = true , single_shot = true - , callback = function() - if self._hover then return end - if not self._notification then return end - naughty.destroy(self._notification) - self._notification = nil - end + , callback = destroy }) end end