X-Git-Url: https://git.madduck.net/etc/awesome.git/blobdiff_plain/c3559967dbed75d0169f4c69a987cf1c295d9165..912bd26ede8901c98fd8d7a35f8493ee448109ad:/widgets/fs.lua diff --git a/widgets/fs.lua b/widgets/fs.lua index c3a9e18..8b2886b 100644 --- a/widgets/fs.lua +++ b/widgets/fs.lua @@ -26,7 +26,8 @@ local setmetatable = setmetatable -- File system disk space usage -- lain.widgets.fs local fs = {} -local fs_notification = nil + +local fs_notification = nil function fs:hide() if fs_notification ~= nil then @@ -38,16 +39,14 @@ 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 + fs_notification_preset.screen = mouse.screen end fs_notification = naughty.notify({ - preset = fs.notification_preset, + preset = fs_notification_preset, text = ws, timeout = t_out }) @@ -68,6 +67,7 @@ local function worker(args) fs.widget = wibox.widget.textbox('') helpers.set_map(partition, false) + helpers.set_map("fsused", 0) function update() fs_info = {} @@ -94,8 +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 - widget = fs.widget - settings() + if helpers.get_map("fsused") ~= fs_now.used then + widget = fs.widget + settings() + helpers.set_map("fsused", fs_now.used) + end if fs_now.used >= 99 and not helpers.get_map(partition) then