summary refs log tree commit diff
path: root/menu.c
Commit message (Collapse)AuthorAgeFilesLines
* Fix overlapping menu items as reported by kn@ and probably others atokan2022-10-151-13/+12
| | | | | | | | some point; with op@ and Walter Alejandro Iglesias helping along the way. Consistently use font ascent+descent instead of an arbitrary font height+1 for individual menu item rectangles and placement. ok kn@ op@
* Unrelated style fixes, consistency changes and sorting, appropriateokan2020-02-271-18/+18
| | | | | dosage/removal of wrappers, simplification of name queue, client cycle joins other kb/mb bound functions.
* Fix regression from r1.107 (lost a return); kettenis@ pointed out the highokan2019-08-121-0/+1
| | | | | potential for a use-after-free (true!) where kn@ ran into the regression using an app that actually exercised the XGrabPointer() failure path.
* Separate out the menu window from the client resize/move geom window; in eachokan2019-03-041-50/+32
| | | | case, create and destroy on-demand. Isolate more menu specific code.
* Stop asking for events (NoEventMask) from menu window once done withokan2018-11-141-0/+1
| | | | the menu (we don't destroy it, only unmap).
* Use a variable to keep track of flags for menu_filter().okan2017-12-191-2/+3
|
* clean up after previous (noprompt removal)okan2017-12-121-6/+1
|
* Unconditionally show prompt on menus, regardless of invocation.okan2017-12-111-42/+20
|
* Remove 'noresult' (and simplify) as it does nothing and makes the logic aroundokan2017-04-251-10/+4
| | | | | it needless. History doesn't show what this might have been used for in future iterations.
* stray newlinesokan2016-12-061-2/+0
|
* Add search_print_text(), a default callback for mi->print in menu_filter(). ↵okan2016-12-061-6/+2
| | | | | | While here, normalize the remaining search_print_* argument paramters.
* Tame the number of 'exec' and 'path' search_match wrappers. No functionalokan2016-12-011-1/+1
| | | | | change now, though more can likely go later, losing the (paritally complete or incomplete/broken) argument completion bits.
* Make it clear these are flags.okan2016-10-241-1/+1
|
* Start simplifying menu code; and in turn, remove a cursor no longerokan2016-10-031-21/+18
| | | | needed.
* Use instinsic X11 functions for key/btn/ptr grab/ungrab/regrab requests;okan2016-09-301-6/+11
| | | | | the one line wrappers provided no value and limited altering calls where needed; additionally, most of them had but one caller.
* Replace mousefunc_sweep_draw() with a generic menu_windraw() using vaokan2016-09-301-0/+32
| | | | | | | lists; use it appropriately for both window dimension and position in the respective mousefunc calls. ok bryent@
* Mechanical change: move screen menu bits to their own struct.okan2016-09-291-15/+15
|
* Inline Xft draw and extents wrappers; too much abstraction.okan2016-09-281-9/+23
|
* Allow ctrl-[ for abort (esc); from Benjamin Scher Purcellokan2016-09-201-0/+3
|
* Enable the use of numpad Enter key on menus; from Henrique N. Lengler.okan2016-08-281-0/+1
| | | | ok beck phessler
* If supplied format to menuq_add() is NULL, fill text with an emptyokan2016-04-281-1/+4
| | | | string; found by Christian Neukirchen.
* Partial revert of replacing screen_area() with region_find(); until aokan2015-11-111-3/+1
| | | | | | fix for a regression is found; this bug has been around for a long time it seems, but this change exposed it. Likely need to track clients in to and out of regions.
* Extend region to include both view and work areas; switch tookan2015-11-091-1/+3
| | | | | | | region_find() which no longer needs to recalculate gap each time a client (or menu) is created or altered. If no RandR, fall back to display dimensions while building regions instead of during execution.
* simplify menu print textokan2015-07-121-15/+8
|
* styleokan2015-07-011-5/+4
|
* style and spacing nitsokan2015-06-301-2/+3
|
* Mechanical change from xinerama to region backed areas.okan2015-06-261-15/+15
|
* clean upokan2015-06-081-16/+13
|
* use the same geometry struct in menus as everywhere elseokan2015-06-051-34/+31
|
* add a flag to indicate a menu list instead of overloading 'prompt'okan2015-06-051-1/+3
|
* redundant check for 'list'okan2015-06-051-1/+1
|
* Reshuffle and slightly simplify menu_complete_path(), removing anokan2015-03-281-9/+5
| | | | allocation, for tab-completion; checked by Alexander Polakov as well.
* Switch to limits.h; replace MAXPATHLEN and MAXHOSTNAMELEN with PATH_MAXokan2015-01-191-1/+2
| | | | | | and HOST_NAME_MAX+1, respectively. ok doug@
* more style nitsokan2014-09-071-13/+13
|
* style nitokan2014-09-061-2/+2
|
* Take menu's bwidth into account for position/size; reported by Thomas Adam.okan2014-02-011-2/+2
|
* Sprinkle a few more const; from Tiago Cunha.okan2014-01-211-2/+2
|
* Add a function that adds an entry to a menuq, normalizing a common codeokan2014-01-201-0/+17
| | | | path; from Tiago Cunha.
* use consistent typesokan2014-01-031-2/+2
|
* calculate proper menu width/height on the first Expose event; 'jump' (while ↵okan2014-01-021-2/+2
| | | | using gap) noticed by Christian Neukirchen
* replace with memsetokan2013-12-171-1/+1
|
* Teach screen_find_xinerama() to apply gap only when told to do so;okan2013-12-131-1/+1
| | | | adjust callers. Needed for an upcoming feature.
* When we receive a NotionNotify event, there's no need to (incorrectlyokan2013-12-021-3/+0
| | | | might I add) redraw the top menu selection.
* Always highlight the first menu item (helpful to see selected items whenokan2013-12-021-4/+2
| | | | | not using a mouse and therefore not generating Expose/MotionNotify events); from Thomas Adam.
* move Cursors into conf.okan2013-06-171-3/+4
|
* stray whitespaceokan2013-05-201-1/+1
|
* - configure menuwin with the screen, then create the xft drawable usingokan2013-05-201-12/+3
| | | | | the menu window since that's the only place on which we draw - elminate the need to change the drawable on every font draw
* no reason to pass around *sc when it's already in menu_ctx.okan2013-05-201-33/+31
|
* move the 2 small font helper functions to xutil.cokan2013-05-191-5/+5
|
* - let callers of font_draw figure out (and pass) the color instead of anokan2013-05-141-4/+4
| | | | | | 'active' flag. - use strlen() inside of font_draw; the only instance where it wasn't used happened to be ignored on a subsequent draw.