From: luke bonham Date: Sat, 15 Nov 2014 12:21:22 +0000 (+0100) Subject: yawn: fetch_weather local -> integrated; net: iface scope fixed X-Git-Url: https://git.madduck.net/etc/awesome.git/commitdiff_plain/30658f602bff127945b0a5acee551fd58eb226fc?hp=-c yawn: fetch_weather local -> integrated; net: iface scope fixed --- 30658f602bff127945b0a5acee551fd58eb226fc diff --git a/asyncshell.lua b/asyncshell.lua index 51885e8..4a01caa 100644 --- a/asyncshell.lua +++ b/asyncshell.lua @@ -11,9 +11,9 @@ -- ...asynchronously: -- asyncshell.request('wscript -Kiev', function(f) wwidget.text = f:read("*l") end) -- ...synchronously --- wwidget.text = asyncshell.demand('wscript -Kiev', 5):read("*l") or "Error" +-- widget:set_text(asyncshell.demand('wscript -Kiev', 5):read("*l") or "Error") --- This makes things faster, but puts weight on sysload and is more cpu demanding. +-- This is more cpu demanding, but makes things faster. local spawn = require('awful.util').spawn @@ -39,7 +39,7 @@ end function asyncshell.request(command, callback) local id = next_id() local tmpfname = asyncshell.file_template .. id - asyncshell.request_table[id] = {callback = callback} + asyncshell.request_table[id] = { callback = callback } local req = string.format("sh -c '%s > %s; " .. 'echo "asyncshell.deliver(%s)" | ' .. diff --git a/widgets/net.lua b/widgets/net.lua index 84751b6..d1179a2 100644 --- a/widgets/net.lua +++ b/widgets/net.lua @@ -42,12 +42,13 @@ end local function worker(args) local args = args or {} local timeout = args.timeout or 2 - local iface = args.iface or net.get_device() local units = args.units or 1024 --kb local notify = args.notify or "on" local screen = args.screen or 1 local settings = args.settings or function() end + iface = args.iface or net.get_device() + net.widget = wibox.widget.textbox('') helpers.set_map(iface, true) diff --git a/widgets/yawn/init.lua b/widgets/yawn/init.lua index b034395..be3e614 100644 --- a/widgets/yawn/init.lua +++ b/widgets/yawn/init.lua @@ -45,9 +45,9 @@ local city_id = nil local sky = nil local settings = function() end -yawn_notification_preset = {} +yawn_notification_preset = {} -local function fetch_weather() +function yawn.fetch_weather() local url = api_url .. units_set .. city_id local cmd = "curl --connect-timeout 1 -fsm 3 '" .. url .. "'" @@ -157,7 +157,7 @@ end function yawn.show(t_out) if yawn.widget._layout.text:match("?") then - fetch_weather(settings) + yawn.fetch_weather() end yawn.hide() @@ -179,7 +179,7 @@ function yawn.register(id, args) city_id = id - newtimer("yawn", timeout, fetch_weather) + newtimer("yawn", timeout, yawn.fetch_weather) yawn.icon:connect_signal("mouse::enter", function() yawn.show(0)