f0524fe07a
give command and group menus their own match callbacks
2017-12-07 16:03:10 +00:00
b06ddae624
stash dir into conf since it'll be of use
2017-12-07 15:47:14 +00:00
0d76265e23
organize this a bit better
2017-12-07 15:40:54 +00:00
592e8efaee
spacing
2017-12-07 15:39:47 +00:00
d9d6b4f88f
Revert r1.109 (Switch to XWindowEvent() pulling out events that match the mask
...
*and* window.) of mousefunc.c. When a client destroys itself while we are
moving or resizing it, XWindowEvent() blocks. Found the hard way by Anton
Lazarov, and Lea°hNeukirchen found the right bit to revert - thanks! Reverting
since the reason to switch from XMaskEvent was unclear.
2017-11-30 18:18:51 +00:00
7d7e256396
Case matters for menu matching on executables; from ben@lloyd.im.
2017-09-06 14:15:13 +00:00
8dee1182a2
Use the key names from keysymdef.h in the default key bindings list for
...
clarification.
from Michael Reed.
2017-07-21 15:55:37 +00:00
60ed85c50f
remove extra parentheses
2017-07-14 18:01:46 +00:00
c039e7fb8c
Pull over the remaining re-implemented window move/resize functions and create
...
a wrapper so that the key and mouse based move/resize callbacks can be unified.
This has already been done with other window operations and menus.
2017-07-14 17:23:38 +00:00
aefc0bf0fb
rename one function, matching others, to help upcoming change
2017-07-12 16:56:26 +00:00
d179dfdeb9
Replace fgetln(3) with POSIX getline(3); inspired by brynet and Ingo.
...
feedback and ok brynet@
2017-07-10 13:36:58 +00:00
f94fde51fb
fix a few WARNINGS (new sentence, new line and extraneous Pp macro) found with
...
mandoc -Tlint
2017-07-06 17:09:17 +00:00
eb79ce65c9
from src, by espie@:
...
no need to generate y.tab.h if nothing uses it, set YFLAGS to nothing
2017-07-06 17:01:10 +00:00
16a2ccc225
drop obsolete comment
2017-05-09 18:43:40 +00:00
113ffcf47e
Alter callbacks to take a struct instead of a growing number of arguments;
...
greatly simplifies upcoming work.
2017-05-09 13:40:18 +00:00
189a735eaa
Ensure clients stay within the viewable bounds on placement, even with empty
...
borders; based on a patch from Vadim Vygonets.
2017-05-05 14:14:19 +00:00
3d6ff6dabf
Clean up, unify and accurately calculate edge distance with client move/resize
...
actions, so as to not lose windows off the edge.
inspired by diffs (and feedback) from Vadim Vygonets.
2017-05-01 12:54:55 +00:00
4d85e2e2a6
Switch bwidth type; unfortunately X11 is inconsistent.
2017-04-26 21:10:54 +00:00
15b9a8fe27
The r1.36 menuq_add() conversion did this one wrong; fix by reverting to the
...
original code which adds to resultentry list, as opposed to the wrong one in
menuq_add(). Fixes crash noticed by at least Rickard Gustafsson.
2017-04-25 13:40:33 +00:00
717e6c8167
Remove 'noresult' (and simplify) as it does nothing and makes the logic around
...
it needless. History doesn't show what this might have been used for in future
iterations.
2017-04-25 12:08:05 +00:00
ffcfff3dea
search_match_path() isn't supposed to return anything.
2017-04-24 15:06:11 +00:00
56b44257a5
Move queue init to caller so it's only called once in a few cases.
2017-04-24 13:35:25 +00:00
15a6fcc851
sort
2017-04-24 13:31:19 +00:00
9b56325908
Raise the previously focused window, instead of the previous window in the
...
cycle list; seems to match behaviour of other wm's; from Walter Alejandro
Iglesias.
2017-04-24 12:27:32 +00:00
50dd70afc5
For {h,v}tile, instead of keeping the master client's {h,v} geometry, expand it
...
to %50 of the area, then fill in the remaining space with the other clients in
the same group; from Gerrit Meyerheim.
support from ajacoutot.
2017-04-24 12:18:04 +00:00
8d9d84d859
Fix group hidden state when a client wants to be on all desktops on start;
...
reported by Vadim Vygonets with diff, but another approach was taken.
2017-02-10 15:00:54 +00:00
172da14d77
Call client_resize instead of client_move after client_placecalc since the size
...
may also change.
from Vadim Vygonets
2017-02-06 18:10:28 +00:00
f908118a3a
Typo on binding name; from Redouan Ait Mallouk.
2017-01-15 21:07:44 +00:00
96918a06e6
Ensure client stays inbound on key-based resize; based on logic existing in
...
key-based client move; from Vadim Vygonets.
2017-01-05 21:18:20 +00:00
613d11434a
When a window has a user or program specified position, ensure the edge of the
...
final position is at least viewable and warp'able by the difference of bwidth;
prevents mapping windows completely off the virtual screen.
2016-12-19 14:17:26 +00:00
8b4666cb92
stray newlines
2016-12-06 21:59:33 +00:00
a7f2ab7497
Add search_print_text(), a default callback for mi->print in menu_filter(). While
...
here, normalize the remaining search_print_* argument paramters.
2016-12-06 21:54:10 +00:00
89e4e7fb14
Consistent use of menuq_add for ssh menu.
2016-12-06 21:09:22 +00:00
2ae4797297
Now that dim.{x,y} are available early, use them before requiring a
...
MotionNotify event.
2016-12-06 21:03:58 +00:00
74092f78aa
Set dim.{x,y} during client_init and update on resize, instead of
...
(re)calculating only when applying hints.
2016-12-06 21:00:13 +00:00
cf4c1879e5
'window-search' is spelled 'menu-window'; the former snuck in during the
...
conversion('menu-window' already existed and was properlly documented); found
the hard way by sthen@ while trying to convert.
2016-12-06 15:03:13 +00:00
cfffa70364
Fold unbinding functions into one for each, key and mouse; plugs a leak when
...
unbinding a mouse button bound to a command.
2016-12-02 17:02:17 +00:00
5b7e66a13b
use the correct type
2016-12-02 16:50:19 +00:00
94f681fc90
Tame the number of 'exec' and 'path' search_match wrappers. No functional
...
change now, though more can likely go later, losing the (paritally complete or
incomplete/broken) argument completion bits.
2016-12-01 20:28:19 +00:00
b94f0748d8
Switch ssh menu to search_match_text; like group/window/cmd menus, use only a
...
substring match. The previous matching is only intended for the exec menus.
2016-12-01 18:44:09 +00:00
92111e526d
Change 'menu-window' to display all windows; then add 'menu-window-hidden' for
...
the previous behaviour of 'menu-window'. 'menu-window' becomes the default
binding; use 'bind-mouse "1" menu-window-hidden' to restore old behaviour for
those who prefer.
OK sthen@ (long long time ago on a different version)
2016-12-01 18:17:52 +00:00
d968a6c1bf
Normalize bind function names, based on a few categories: window, group, menu
...
and pointer.
Replace 'bind' and 'mousebind' options with 'bind-key' and 'bind-mouse',
respectively, replace special 'unmap' keyword with 'unbind-key' and
'unbind-mouse', and additionally allow unbinding all with 'all' keyword.
2016-12-01 17:17:27 +00:00
ae9f900b91
Use an additional check with lstat(2) when d_type is unknown.
...
from James McDonald via portable.
2016-11-15 18:43:09 +00:00
db02592e5c
revert previous; upcoming changes will hopefully deal with these more
...
naturally.
2016-11-15 00:22:02 +00:00
62dc5ae132
Add a wrapper based upon xevent handlers around client move/resize for key and
...
mouse bindings.
2016-11-15 00:07:03 +00:00
ed22d7a944
Define callbacks, then default bindings.
2016-11-14 21:25:59 +00:00
64e133b289
Reorganize for upcoming changes.
2016-11-14 19:56:05 +00:00
98c913cc3b
Remove the (8) default bindings for pointer move since they conflict with
...
default bindings for emacs, which wins; the feature remains and can be bound to
whatever users wish with cwmrc(5).
from mpi@
2016-11-14 13:52:33 +00:00
db93599a0f
Make it clear these are flags.
2016-10-24 20:44:08 +00:00
972e28d58c
Remove duplicate check that strsubmatch() already does; while here, fix a
...
comment.
2016-10-24 18:57:12 +00:00