diff options
author | Okan Demirmen <okan@cvs.openbsd.org> | 2011-05-07 17:15:38 +0000 |
---|---|---|
committer | Okan Demirmen <okan@cvs.openbsd.org> | 2011-05-07 17:15:38 +0000 |
commit | 95d258d9c7697b206df906f645600bfaa885eeb8 (patch) | |
tree | f31f04f40a2ec67e9ec62d5ee47485390bcda654 /app/cwm/kbfunc.c | |
parent | d450be8250d819b897aa794573c814df1c9c9710 (diff) |
introduce a new 'freeze' flag (CMS-f by default) which may be applied to
any window, after which all move/resize requests will be ignored,
essentially freezing the window in place.
there's a possibility to merge this with the 'ignore' concept, pending
on how ignore+freeze should behave (really more ewmh stuff), but punting
for now since ponies are on the line.
requested and tested by thib at k2k11 with ponies, unicorns and rainbows.
'save the unicorns' todd@, ok oga@
Diffstat (limited to 'app/cwm/kbfunc.c')
-rw-r--r-- | app/cwm/kbfunc.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/app/cwm/kbfunc.c b/app/cwm/kbfunc.c index 775581b11..a9f14fc56 100644 --- a/app/cwm/kbfunc.c +++ b/app/cwm/kbfunc.c @@ -15,7 +15,7 @@ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. * - * $Id: kbfunc.c,v 1.51 2010/02/10 01:23:05 okan Exp $ + * $Id: kbfunc.c,v 1.52 2011/05/07 17:15:37 okan Exp $ */ #include <sys/param.h> @@ -58,6 +58,9 @@ kbfunc_moveresize(struct client_ctx *cc, union arg *arg) int x, y, flags, amt; u_int mx, my; + if (cc->flags & CLIENT_FREEZE) + return; + sc = cc->sc; mx = my = 0; @@ -480,6 +483,12 @@ kbfunc_client_hmaximize(struct client_ctx *cc, union arg *arg) } void +kbfunc_client_freeze(struct client_ctx *cc, union arg *arg) +{ + client_freeze(cc); +} + +void kbfunc_quit_wm(struct client_ctx *cc, union arg *arg) { _xev_quit = 1; |