awful.menu: always enable keyboard navigation

I don't see why people would not want keyboard-enabled-menu by default.
Without it, you can't even use 'Escape' to quit the menu or press 'Enter' to
execute an entry.  But instead of just enabling keyboard support by default, we
remove the option of disabling keyboard support altogether, which also
simplifies the implementation a bit.

Signed-off-by: Anurag Priyam <anurag08priyam@gmail.com>
Signed-off-by: Uli Schlachter <psychon@znc.in>
This commit is contained in:
Anurag Priyam 2012-03-01 14:12:56 -05:00 committed by Uli Schlachter
parent 69a96fc505
commit 1e4bf83d3b
2 changed files with 5 additions and 21 deletions

View File

@ -210,7 +210,7 @@ globalkeys = awful.util.table.join(
awful.client.focus.byidx(-1)
if client.focus then client.focus:raise() end
end),
awful.key({ modkey, }, "w", function () mymainmenu:show({keygrabber=true}) end),
awful.key({ modkey, }, "w", function () mymainmenu:show() end),
-- Layout manipulation
awful.key({ modkey, "Shift" }, "j", function () awful.client.swap.byidx( 1) end),

View File

@ -316,26 +316,16 @@ end
--- Show a menu.
-- @param menu The menu to show.
-- @param args.keygrabber A boolean enabling or not the keyboard navigation.
-- @param args.coords Menu position defaulting to mouse.coords()
function show(menu, args)
args = args or {}
local coords = args.coords or nil
local screen_index = capi.mouse.screen
local keygrabber = args.keygrabber or false
if not set_size(menu) then return end
set_coords(menu, screen_index, coords)
if menu.parent then
menu.keygrabber = menu.parent.keygrabber
elseif keygrabber ~= nil then
menu.keygrabber = keygrabber
else
menu.keygrabber = false
end
if not cur_menu and menu.keygrabber then
if not cur_menu then
capi.keygrabber.run(grabber)
end
cur_menu = menu
@ -358,7 +348,7 @@ function hide(menu)
if cur_menu == menu then
cur_menu = cur_menu.parent
end
if not cur_menu and menu.keygrabber then
if not cur_menu then
capi.keygrabber.stop()
end
menu.wibox.visible = false
@ -366,7 +356,6 @@ end
--- Toggle menu visibility.
-- @param menu The menu to show if it's hidden, or to hide if it's shown.
-- @param args.keygrabber A boolean enabling or not the keyboard navigation.
-- @param args.coords Menu position {x,y}
function toggle(menu, args)
if menu.wibox.visible then
@ -380,9 +369,7 @@ end
-- @param menu The mnenu to update.
function update(menu)
if menu.wibox.visible then
menu:show({
keygrabber = menu.keygrabber,
coords = { x = menu.x, y = menu.y } })
menu:show({ coords = { x = menu.x, y = menu.y } })
end
end
@ -488,7 +475,6 @@ end
--- Build a popup menu with running clients and shows it.
-- @param menu Menu table, see new() function for more informations
-- @param args.keygrabber A boolean enabling or not the keyboard navigation.
-- @return The menu.
function clients(menu, args) -- FIXME crude api
menu = menu or {}
@ -644,9 +630,7 @@ end
-- &nbsp;&nbsp;&nbsp; } <br/>
-- &nbsp;&nbsp; end <br/>
-- &nbsp; end <br/>
-- &nbsp; m = awful.menu(terms) <br/>
-- &nbsp; m:show({keygrabber=true}) <br/>
-- &nbsp; return m <br/>
-- &nbsp; awful.menu(terms):show() <br/>
-- end <br/>
--</code></p>
function new(args, parent)