X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/0ef82f83e0baaa2936b6204a24ee3b3b638fd409..09c71d8ee60e3779b31aa3c9e7af8db7c9602a73:/widgets/mpd.lua?ds=sidebyside

diff --git a/widgets/mpd.lua b/widgets/mpd.lua
index 016f2a3..e3ed50d 100644
--- a/widgets/mpd.lua
+++ b/widgets/mpd.lua
@@ -9,7 +9,7 @@
 
 local helpers      = require("lain.helpers")
 
-local util         = require("awful.util")
+local escape_f     = require("awful.util").escape
 local naughty      = require("naughty")
 local wibox        = require("wibox")
 
@@ -26,13 +26,15 @@ local setmetatable = setmetatable
 local mpd = {}
 
 local function worker(args)
-    local args      = args or {}
-    local timeout   = args.timeout or 2
-    local password  = args.password or ""
-    local host      = args.host or "127.0.0.1"
-    local port      = args.port or "6600"
-    local music_dir = args.music_dir or os.getenv("HOME") .. "/Music"
-    local settings  = args.settings or function() end
+    local args        = args or {}
+    local timeout     = args.timeout or 2
+    local password    = args.password or "\"\""
+    local host        = args.host or "127.0.0.1"
+    local port        = args.port or "6600"
+    local music_dir   = args.music_dir or os.getenv("HOME") .. "/Music"
+    local cover_size  = args.cover_size or 100
+    local default_art = args.default_art or ""
+    local settings    = args.settings or function() end
 
     local mpdcover = helpers.scripts_dir .. "mpdcover"
     local mpdh = "telnet://" .. host .. ":" .. port
@@ -40,7 +42,7 @@ local function worker(args)
 
     mpd.widget = wibox.widget.textbox('')
 
-    notification_preset = {
+    mpd_notification_preset = {
         title   = "Now playing",
         timeout = 6
     }
@@ -63,18 +65,18 @@ local function worker(args)
             for k, v in string.gmatch(line, "([%w]+):[%s](.*)$") do
                 if     k == "state"  then mpd_now.state  = v
                 elseif k == "file"   then mpd_now.file   = v
-                elseif k == "Artist" then mpd_now.artist = util.escape(v)
-                elseif k == "Title"  then mpd_now.title  = util.escape(v)
-                elseif k == "Album"  then mpd_now.album  = util.escape(v)
-                elseif k == "Date"   then mpd_now.date   = util.escape(v)
+                elseif k == "Artist" then mpd_now.artist = escape_f(v)
+                elseif k == "Title"  then mpd_now.title  = escape_f(v)
+                elseif k == "Album"  then mpd_now.album  = escape_f(v)
+                elseif k == "Date"   then mpd_now.date   = escape_f(v)
                 end
             end
         end
 
         f:close()
 
-        notification_preset.text = string.format("%s (%s) - %s\n%s", mpd_now.artist,
-                                   mpd_now.album, mpd_now.date, mpd_now.title)
+        mpd_notification_preset.text = string.format("%s (%s) - %s\n%s", mpd_now.artist,
+                                       mpd_now.album, mpd_now.date, mpd_now.title)
         widget = mpd.widget
         settings()
 
@@ -84,10 +86,11 @@ local function worker(args)
             then
                 helpers.set_map("current mpd track", mpd_now.title)
 
-                os.execute(string.format("%s %q %q", mpdcover, music_dir, mpd_now.file))
+                os.execute(string.format("%s %q %q %d %q", mpdcover, music_dir,
+                           mpd_now.file, cover_size, default_art))
 
                 mpd.id = naughty.notify({
-                    preset = notification_preset,
+                    preset = mpd_notification_preset,
                     icon = "/tmp/mpdcover.png",
                     replaces_id = mpd.id
                 }).id