| Commit message (Collapse) | Author | Lines |
|
|
|
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.
|
|
keeping them hidden; showing them has apparently caused confusion/angst.
|
|
number/shortcut and/or name.
|
|
(only used in one place, application menu searching); re-visit later.
broken application menu searching reported by Peter Kane.
|
|
|
|
'term'.
|
|
allows a (now blank) menu to appear, as opposed to nothing at all.
Behavior reported by Alex Greif.
|
|
|
|
anything else
|
|
|
|
and HOST_NAME_MAX+1, respectively.
ok doug@
|
|
|
|
|
|
|
|
truncation check so it's obvious.
|
|
global Clientq and place it inside screen_ctx since every client belongs
to a screen, then use the same per screen clientq to track stacking
order (the sole reason for mruq).
|
|
|
|
'term' now show up in the application menu.
|
|
|
|
client to 'stick' to all desktops (ewmh speak) or groups - this
currently has the same affect as setting a client's group to 'nogroup',
with the exception that the client can also be in a group, so when
un-sticking, the client will go back to its original group/desktop.
|
|
header from xevents.c; noticed by Christian Neukirchen.
|
|
|
|
This is useless when searching for windows launched via the ssh command
menu; supply a more useful title: '[ssh] <hostname>'.
Idea from todd@, ok todd@
|
|
|
|
change allows a restart to trigger proper teardown first, even though
teardown is not (yet) complete.
After some discussion with oga@nicotinebsd.org regarding a more
complicated version/idea.
|
|
|
|
back with the pointer in the right place; matches behaviour when
lowering via the mouse function.
|
|
|
|
path; from Tiago Cunha.
|
|
|
|
Since we already have a form of 'maximize', we need to differentiate
between 'maximize' and the new 'fullscreen' mode. The 'maximize' mode
will continue to honor gap but now *retains* the border, matching the
'vert/horz maximize' behaviour. The new 'fullscreen' mode supports and
follows the _NET_WM_STATE_FULLSCREEN hint, allowing the client perform
additional window modifications; in this mode, cwm(1) will *ignore* gap,
remove borders and freeze(move/resize) the client. Additionally,
'fullscreen' mode will remember various combinations of previous states.
* default keybinding changes: CM-f 'fullscreen', CM-m 'maximize' (re-map
as desired).
Positive feedback from a few, testing and ok sthen@
|
|
adjust callers. Needed for an upcoming feature.
|