From 504c105cba2297ee8f4c12439dab928b8d8e87e1 Mon Sep 17 00:00:00 2001 From: actionless Date: Thu, 4 Feb 2016 14:03:50 +0100 Subject: [PATCH] feat(awful: widgets): add 'watch' widget --- docs/images/awful_widget_watch.png | Bin 0 -> 8574 bytes lib/awful/widget/init.lua | 1 + lib/awful/widget/watch.lua | 92 +++++++++++++++++++++++++++++ tests/test-awful-widget-watch.lua | 30 ++++++++++ 4 files changed, 123 insertions(+) create mode 100644 docs/images/awful_widget_watch.png create mode 100644 lib/awful/widget/watch.lua create mode 100644 tests/test-awful-widget-watch.lua diff --git a/docs/images/awful_widget_watch.png b/docs/images/awful_widget_watch.png new file mode 100644 index 0000000000000000000000000000000000000000..7903138ff16af070adf58b82630308a2684fe4cd GIT binary patch literal 8574 zcmbW7V{|7?*Y0E6wkEbYu{p7A+qUzMZQD*JwylY6`^^15=Xvk*`F!c>uC8_Mt7>=m zs@1<8p&%y?4}${(1Ox;xDIuZ+1O#&N_nZ+5SzdOQM2;5-;OvIv@@ib9?KfbZFw{PkjE-mymxbZ_#x*rb^zJ;Nbu0Ap)yAjca~SOo&;b+#XmLvUmoBy_+k8 zx^O8e%UY<44JPMR=8M8xlS@#4j!fEPU+PgzcKlJv31BeQmM4@b)&Jkp35p8`V-fp)e z$5OWy+OYbZ27gPjPo&gj7_5gWp?T~beD!HFkE@_78vGfIP~Hkl!+ummD_#Bt=!%N! zM!g}c@%I>YvdG}lkn!0Qz{NN*!B+=}3@2nOV-VzoDJRg&?^9rR8)(<~mkQ$X^f#(t zj#KCP9j(R@WKb3Fa{8S)bFc`rNsg~HJS)!7tmi@0Qzb4g~#jS#~R=0%Uw!AGJ){`*FX%j%!0m_pEIgD?x2?yv0Ma7wDU(hQ(4Ork~@LO&7*A|wG1<|8gOiPKD!daJ?cv!|wMiVKWxhJ4_t=K!2p@8b; z>`$9SdZjz+T}5~Df;l|Ec?Md-c0SxJJBGnm=?%r4FN= zD$k?iW9$aS5enMS+1TRVshZL&#ytq#x9Me8SDb4jc4b%7uOlSbwgk$l&)xo@(A&k_ zGZQV{w)V}LirDsT^_xiCpED$6x3&9&8c)@2`zoUDM-Fe*o z$cqzlt%$g6uX|LuadR>I`r_KiYt47Y8SpnRw(55PxKf%vVkAfkPAQkLDm+?L!^F|S zkay3Q$<~xF6i4^9l9RiX5zsNMs1`g;F2kve;Df2#2P^n6Fg*1?RODd0RPFsEwQ<}` zekF0Tdta#+=SX;PsH!L%PAPTN7`l9n(R`1Fkn;-4JCj3pFtu#HmMARF&Pt(HdV28s zB8=+0!&QGanBc)AgM@~wVT0rMPJZPC6W

-ePg+n<0* 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 1 then -- timer fired at least twice + return true + end + end +} +require("_runner").run_steps(steps) + +-- vim: filetype=lua:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:textwidth=80