From b60b9b7c2d65a5c5f8e68fbec27665e9abb99f76 Mon Sep 17 00:00:00 2001 From: Thierry Ghelew Date: Wed, 7 May 2014 17:29:51 +0200 Subject: [PATCH] fix maildir and /util/init.lua which was not counting email properly and lacking function util.element_in_table function --- util/init.lua | 10 ++++++++++ widgets/maildir.lua | 9 ++++++--- 2 files changed, 16 insertions(+), 3 deletions(-) diff --git a/util/init.lua b/util/init.lua index 2f28b9a..d99f007 100644 --- a/util/init.lua +++ b/util/init.lua @@ -210,4 +210,14 @@ function util.useless_gaps_resize(thatmuch) awful.layout.arrange(mouse.screen) end +-- Check if an element exist on a table +function util.element_in_table(element, tbl) + for _, i in pairs(tbl) do + if i == element then + return true + end + end + return false +end + return setmetatable(util, { __index = wrequire }) diff --git a/widgets/maildir.lua b/widgets/maildir.lua index d460881..8fe097e 100644 --- a/widgets/maildir.lua +++ b/widgets/maildir.lua @@ -11,6 +11,8 @@ local newtimer = require("lain.helpers").newtimer local wibox = require("wibox") +local util = require("lain.util") + local io = io local os = { getenv = os.getenv } local pairs = pairs @@ -66,15 +68,16 @@ local function worker(args) table.sort(boxes) newmail = "no mail" + --Count the total number of mails irrespective of where it was found + total = 0 - local count = 0 for box, number in pairs(boxes) do - count = count + 1 -- Add this box only if it's not to be ignored. if not util.element_in_table(box, ignore_boxes) then - if newmail == "" + total = total + number + if newmail == "no mail" then newmail = box .. "(" .. number .. ")" else