From 702fa1967c26cdd7c372c94d53e9b53c1cb730a6 Mon Sep 17 00:00:00 2001 From: Clemens Kirchgatterer Date: Sun, 13 Sep 2015 14:47:16 +0200 Subject: [PATCH] Improved fix for #240 by makeing instance local to client_menu_toggle_fn --- awesomerc.lua | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/awesomerc.lua b/awesomerc.lua index 315dc61c..b4a16518 100755 --- a/awesomerc.lua +++ b/awesomerc.lua @@ -74,13 +74,16 @@ awful.layout.layouts = { -- }}} -- {{{ Helper functions -local client_menu_instance = nil -local function client_menu_toggle() - if client_menu_instance and client_menu_instance.wibox.visible then - client_menu_instance:hide() - client_menu_instance = nil - else - client_menu_instance = awful.menu.clients({ theme = { width = 250 } }) +local function client_menu_toggle_fn() + local instance = nil + + return function () + if instance and instance.wibox.visible then + instance:hide() + instance = nil + else + instance = awful.menu.clients({ theme = { width = 250 } }) + end end end -- }}} @@ -162,9 +165,7 @@ mytasklist.buttons = awful.util.table.join( c:raise() end end), - awful.button({ }, 3, function () - client_menu_toggle() - end), + awful.button({ }, 3, client_menu_toggle_fn()), awful.button({ }, 4, function () awful.client.focus.byidx(1) end),