X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/c3559967dbed75d0169f4c69a987cf1c295d9165..2429e10cc1029d9ea7269d502bdbcc408c5a2894:/widgets/fs.lua?ds=sidebyside

diff --git a/widgets/fs.lua b/widgets/fs.lua
index c3a9e18..5215c86 100644
--- a/widgets/fs.lua
+++ b/widgets/fs.lua
@@ -38,9 +38,7 @@ end
 function fs:show(t_out)
     fs:hide()
 
-    local f = io.popen(helpers.scripts_dir .. "dfs")
-    ws = f:read("*all"):gsub("\n*$", "")
-    f:close()
+    local ws = helpers.read_pipe(helpers.scripts_dir .. "dfs"):gsub("\n*$", "")
 
     if fs.followmouse then
         fs.notification_preset.screen = mouse.screen
@@ -60,6 +58,8 @@ local function worker(args)
     local args             = args or {}
     local timeout          = args.timeout or 600
     local partition        = args.partition or "/"
+    local showpopup        = args.showpopup or "on"
+    local notify           = args.notify or "on"
     local settings         = args.settings or function() end
 
     fs.followmouse         = args.followmouse or false
@@ -94,10 +94,11 @@ local function worker(args)
         fs_now.size_mb   = tonumber(fs_info[partition .. " size_mb"]) or 0
         fs_now.size_gb   = tonumber(fs_info[partition .. " size_gb"]) or 0
 
+        notification_preset = fs.notification_preset
         widget = fs.widget
         settings()
 
-        if fs_now.used >= 99 and not helpers.get_map(partition)
+        if notify == "on" and fs_now.used >= 99 and not helpers.get_map(partition)
         then
             naughty.notify({
                 title = "warning",
@@ -112,8 +113,10 @@ local function worker(args)
         end
     end
 
-    fs.widget:connect_signal('mouse::enter', function () fs:show(0) end)
-    fs.widget:connect_signal('mouse::leave', function () fs:hide() end)
+    if showpopup == "on" then
+        fs.widget:connect_signal('mouse::enter', function () fs:show(0) end)
+        fs.widget:connect_signal('mouse::leave', function () fs:hide() end)
+    end
 
     helpers.newtimer(partition, timeout, update)