Commit Graph

55 Commits

Author SHA1 Message Date
Adrian C. (anrxc) d07f3533c6 awful.menu: sanitize support for access keys
Commit 87070ca introduced support for access keys in menus. Chosen
character was "&", an XML entity that has potential to cause problems;
if a user tries to add multiple access keys or just put an ampersand
in the name of the item the menu will break. Breaking happened because
ampersands were not escaped - first one was substituted and the rest
were ignored, but not escaped which triggered a pango markup error.

Signed-off-by: Adrian C. (anrxc) <anrxc@sysphere.org>
Signed-off-by: Julien Danjou <julien@danjou.info>
2010-03-01 15:56:39 +01:00
Adrian C. (anrxc) 39a0fba7a8 awful.menu: add keygrabber support to clients menu
Functions show() and toggle() accept a boolean parameter controlling
keyboard navigation. In case of the clients menu neither is called
directly, instead the clients menu is always re-created in case any
new clients appeard since the last invocation. This patch adds a
keygrabber parameter to the clients() function as well.

Signed-off-by: Adrian C. (anrxc) <anrxc@sysphere.org>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-12-03 14:22:06 +01:00
Matthias Schröder 87070cadac awful.menu: support for access keys
You can define a menuitem like before:

awful.menu({ items = { { "&awesome", myawesomemenu,
	 		    beautiful.awesome_icon },
                       { "open &terminal", terminal },
	   })

and the letters following the ampersand in itemname can be used as
access key. (at least former fvwm users might find this familiar)

When there are submenus open awesome ascends during the search from the
current menu to the top level menu.

The access key is shown underlined.

There is no warning for multiple used keys, only the first one found
gets the price.

Signed-off-by: Julien Danjou <julien@danjou.info>
2009-11-26 19:56:04 +01:00
Hiltjo Posthuma cb262809dd awful.menu: use actual wibox border width
We check the wibox border width for inappropiate values now, if we set
border_width to a negative value (invalid) in our theme and draw it, the
actual border_width will be 0 so the menu will be drawn incorrectly.
This fixed this.

Signed-off-by: Hiltjo Posthuma <hiltjo@codemadness.org>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-11-21 10:47:57 +01:00
Damjan 3f565f1a3d awful.menu: fix gap (FS#665)
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-10-26 10:07:15 +01:00
Stephen Sugden 24a614f8d0 awful.menu: fix wibox height computing
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-09-08 10:24:32 +02:00
Julien Danjou 642a3f454b awful.menu: enhance description
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-08-28 15:34:52 +02:00
Julien Danjou 5f43d178f7 awful.menu: use iconbox widget rather than bg_image
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-08-25 18:13:19 +02:00
Julien Danjou 973b19aba0 awful.menu: fix default key handling
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-08-21 16:35:12 +02:00
Julien Danjou 435716af73 awful.menu: allow more keys than only one in menu bindings
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-08-21 16:28:55 +02:00
Julien Danjou 630748ef61 awful.menu: only listen mouse::enter on wibox
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-08-21 15:30:48 +02:00
Julien Danjou d6fd7f1116 awful.wibox: update strut on wibox attachement
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-08-21 15:30:48 +02:00
Julien Danjou 84839d456d wibox: port to new object system
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-08-21 15:30:47 +02:00
Julien Danjou 9c40168f02 widget: emit signals on mouse enter and leave
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-08-21 15:30:47 +02:00
Julien Danjou 073e0377dd Revert "key, button: use as simple table"
This reverts commit d7454f4307.

Conflicts:

	button.h
	key.h
	lib/awful/titlebar.lua.in
	lib/naughty.lua.in
	wibox.c
	wibox.h
	widget.c
2009-08-14 16:48:52 +02:00
Julien Danjou d7454f4307 key, button: use as simple table
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-07-28 10:44:54 +02:00
Gregor Best ea618d3688 awful.menu: add support for widget layouts
Signed-off-by: Gregor Best <farhaven@googlemail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-07-17 16:46:53 +02:00
Julien Danjou 18e96e360d awful.menu: add __call on module
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-07-15 15:57:31 +02:00
Julien Danjou 7cc0b13eae wibox: move position handling to Lua
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-06-04 17:51:30 +02:00
Vincent Mauge d1e9c0d5e9 Remove useless loop in hide()
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-05-07 08:27:30 +02:00
Julien Danjou e584da44ae awful.menu: set some vars as local
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-04-30 02:12:23 +02:00
Julien Danjou 21978546eb lib: fix libs to use new awful.button
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-04-17 18:08:52 +02:00
Gregor Best addfd7b39f awful.menu: fix custom keybindings
Signed-off-by: Gregor Best <farhaven@googlemail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-03-31 09:08:11 +02:00
Gregor Best e9acefa24e awful.menu: fix error when using the keyboard to navigate on an empty menu
Signed-off-by: Gregor Best <farhaven@googlemail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-03-31 09:08:10 +02:00
Damien Leone 2aeb2304e7 awful.menu: add custom keybindings feature 2009-03-12 19:57:41 +01:00
Damien Leone effb03a976 awful.menu: add keyboard navigation feature 2009-03-12 19:56:11 +01:00
Damien Leone e823596e5a awful.menu: optimizations
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-03-12 11:49:59 +01:00
Julien Danjou b282bf0086 awful.menu: fix auto_expand attribute copy between parent and child
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-23 14:19:49 +01:00
Julien Danjou 37d2fb6781 awful.menu: fix auto_expand
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-23 14:12:28 +01:00
Damien Leone 67f04c0d68 awful.menu: add auto expand feature
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-23 13:58:23 +01:00
Damien Leone 232a362994 awful.menu: refactoring menus
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-23 13:55:20 +01:00
Damien Leone 46144588f5 awful.menu: fix submenus coords and fix border gaps between menu items
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-23 10:13:44 +01:00
Gregor Best b5db8032f9 lib/awful/menu.lua: fix widget buttons
Signed-off-by: Gregor Best <farhaven@googlemail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-13 23:49:36 +01:00
Gregor Best 3f418ba79a lib/awful/menu.lua: fix item buttons
Signed-off-by: Gregor Best <farhaven@googlemail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-02-13 22:57:14 +01:00
Julien Danjou f8c9a5e5e5 awful.menu: do not export documentation of local functions
Signed-off-by: Julien Danjou <julien@danjou.info>
2009-01-08 12:25:27 +01:00
Julien Danjou ee1e63009b awful.menu: check there's at least one item
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-29 17:20:33 +01:00
Leon Winter 653fa0fadb awful.menu: use bg_image instead of an imagebox
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-19 12:59:44 +01:00
Leon Winter 8199f1c35a awful.menu: change menu height to 16px
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-19 12:39:48 +01:00
Maarten Maathuis 6e199bbd76 client, swindow: switch to a more convient definition of geometry
- In many places i see people correcting for border width and titlebars.
- This new definition is the equivilant of what used to be fullgeometry.
- The internal geometry is now contained to a few functions that few people ever touch.
- This should avoid confusion and make code easier.
- Also protect against several unsigned overflows.

Signed-off-by: Maarten Maathuis <madman2003@gmail.com>
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-12-14 10:28:24 +01:00
Julien Danjou 2e97991a90 beautiful: merge awful.beautiful, stop registering system
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-11-13 11:54:23 +01:00
Julien Danjou 0cddba4d82 awful.menu: store active child
This fix the menu when they are multiple submenu entries.

Signed-off-by: Julien Danjou <julien@danjou.info>
2008-11-10 19:09:20 +01:00
Julien Danjou 36e4847dd1 themes: move theme icons to themes/
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-11-10 12:02:08 +01:00
Julien Danjou 950e9f96c5 awful.menu: fix icon widget if no image given
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-11-08 14:32:50 +01:00
Julien Danjou cb43b5a5bd awful.menu: rewrite to be more object compliant
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-11-07 15:27:51 +01:00
Damien Leone d8aef41795 awful.menu: add menu_toggle parameter 2008-10-30 12:52:16 +01:00
Damien Leone a2f3790dce awful.menu: add a close function and fix various bugs 2008-10-27 12:30:47 +01:00
Julien Danjou 827d084dbf awful.menu: escape client name in clients menu
Signed-off-by: Julien Danjou <julien@danjou.info>
2008-10-25 15:36:08 +02:00
Damien Leone 666f3c9c83 awful.menu: add custom theme and fix various bugs 2008-10-25 15:33:02 +02:00
Damien Leone e3ea2789de awful.menu: fix screen width computation 2008-10-24 11:04:02 +02:00
Damien Leone 7750631bf2 awful.menu: prevent menus from poping outside the work area 2008-10-24 10:37:59 +02:00