| Commit message (Collapse) | Author | Lines |
|
|
|
case, create and destroy on-demand. Isolate more menu specific code.
|
|
heavily based on a diff from Nam Nguyen.
|
|
delete; 'window-close' is now the proper action, but 'window-delete' as an
alias will remain until more interesting changes require breaking configs.
|
|
|
|
which one may configure (wm <name> <path_and_args>) (and choose) specific
window managers to replace the running one. 'wm cwm cwm' is included by
default.
No objections and seems sensible to sthen.
|
|
into the keyrelease event, only performing what's actually needed for each;
should result in much fewer events against keyreleases. No intended behaviour
change.
Additionally, like we do for group membership, grab the keyboard only when
required for cycling.
|
|
border work for a group/ungroup action.
|
|
|
|
|
|
|
|
re-proposed by Julien Steinhauser with an updated diff. Apparently this was in
the original calmnwm.
However, expand the original idea and let clients 'snap' to edges instead,
neatly allowing key bindings that snap to adjacent edges (i.e. corners) as
well. No default bindings assigned.
|
|
|
|
|
|
*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.
|
|
|
|
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.
|
|
|
|
feedback and ok brynet@
|
|
greatly simplifies upcoming work.
|
|
actions, so as to not lose windows off the edge.
inspired by diffs (and feedback) from Vadim Vygonets.
|
|
key-based client move; from Vadim Vygonets.
|
|
While
here, normalize the remaining search_print_* argument paramters.
|
|
|
|
change now, though more can likely go later, losing the (paritally complete or
incomplete/broken) argument completion bits.
|
|
substring match. The previous matching is only intended for the exec menus.
|
|
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)
|
|
from James McDonald via portable.
|
|
naturally.
|
|
mouse bindings.
|
|
|
|
|
|
client_ctx in keypress and buttonpress event handlers; pass appropriate *ctx's
based on context.
While here, limit some globals, replace defines with appropriate variables and
fix some naming.
|
|
|
|
key press. This allows to remove a few hacks to duplicate functions only
for behaviour changes; now differing behaviours are pushed down to the
callback. Also will allow for previously unavailable actions to be bind-able
down the road.
|
|
completely off the screen/region; instead, if the pointer is outside of
the client bounds, warp the pointer to the closest edge before moving.
|
|
requests); most callers do this already - deal with the few that do not.
client_ptrwarp becomes a simple wrapper (setpos) but it will be expanded.
|
|
mousefunc_menu_{client,cmd,group} into the respective
kbfunc_menu_{client,cmd,group} functions; simply pass a flag down from
config denoting mouse action behaviour.
|
|
scale keyboard based resizes; extend kbfunc_amount().
Behaviour noted by, tested by, and ok sthen@
|
|
|
|
do for mouse based resize requests.
Based on a patch from Vadim Vygonets.
|
|
got nothing to do with clients, thus doing flags work causes lots of
waste and almost useless jumpy pointer movements; while here, split out
move and resize since they share almost no code, just like mouse client
move/resize; factor out amount and factor. Still wonder why this is
here, but it works now.
|
|
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.
|
|
|
|
|
|
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.
|
|
new window manager; so allow CWM_EXEC_WM to assign new wm to wm_argv and
pass through cwm_status (now EXECWM) so that x_teardown() gets called
before exec'ing the new window manager. Removes the need for a separate
x_restart() now, using new wm_argv; and consolidates errno for execvp.
|
|
Reported (again!) by Peter Kane.
|
|
update comments about why we need to grab/ungrab the keyboard.
|
|
position and size; based on discussion with a few.
|