Skip to content
Snippets Groups Projects
Commit ce846e94 authored by Anselm R. Garbe's avatar Anselm R. Garbe
Browse files

added xlock command (I need it regularly)

parent 0a638a4c
No related branches found
No related tags found
No related merge requests found
......@@ -11,9 +11,7 @@
#include "dwm.h"
static void floating(void);
static void tiling(void);
static void (*arrange)(void) = floating;
static void (*arrange)(void *) = floating;
void
max(void *aux)
......@@ -24,27 +22,30 @@ max(void *aux)
stack->y = sy;
stack->w = sw - 2 * stack->border;
stack->h = sh - 2 * stack->border;
craise(stack);
resize(stack);
discard_events(EnterWindowMask);
}
static void
floating(void)
void
floating(void *aux)
{
Client *c;
arrange = floating;
for(c = stack; c; c = c->snext)
resize(c);
discard_events(EnterWindowMask);
}
static void
tiling(void)
void
tiling(void *aux)
{
Client *c;
int n, cols, rows, gw, gh, i, j;
float rt, fd;
arrange = tiling;
if(!clients)
return;
for(n = 0, c = clients; c; c = c->next, n++);
......@@ -75,17 +76,6 @@ tiling(void)
discard_events(EnterWindowMask);
}
void
toggle(void *aux)
{
if(arrange == floating)
arrange = tiling;
else
arrange = floating;
arrange();
}
void
sel(void *aux)
{
......@@ -280,7 +270,7 @@ manage(Window w, XWindowAttributes *wa)
GrabModeAsync, GrabModeSync, None, None);
XGrabButton(dpy, Button3, Mod1Mask, c->win, False, ButtonPressMask,
GrabModeAsync, GrabModeSync, None, None);
arrange();
arrange(NULL);
XWarpPointer(dpy, None, c->win, 0, 0, 0, 0, c->w / 2, c->h / 2);
focus(c);
}
......@@ -400,7 +390,7 @@ unmanage(Client *c)
XFlush(dpy);
XSetErrorHandler(error_handler);
XUngrabServer(dpy);
arrange();
arrange(NULL);
if(stack)
focus(stack);
}
......
......@@ -17,13 +17,16 @@ const char *term[] = {
"-*-terminus-medium-*-*-*-13-*-*-*-*-*-iso10646-*",NULL
};
const char *browse[] = { "firefox", NULL };
const char *xlock[] = { "xlock", NULL };
static Key key[] = {
{ Mod1Mask, XK_Return, (void (*)(void *))spawn, term },
{ Mod1Mask, XK_w, (void (*)(void *))spawn, browse },
{ Mod1Mask, XK_l, (void (*)(void *))spawn, xlock },
{ Mod1Mask, XK_k, sel, "prev" },
{ Mod1Mask, XK_j, sel, "next" },
{ Mod1Mask, XK_space, toggle, NULL },
{ Mod1Mask, XK_t, tiling, NULL },
{ Mod1Mask, XK_f, tiling, NULL },
{ Mod1Mask, XK_m, max, NULL },
{ Mod1Mask | ShiftMask, XK_c, ckill, NULL },
{ Mod1Mask | ShiftMask, XK_q, quit, NULL },
......
......@@ -100,7 +100,8 @@ extern void lower(Client *c);
extern void ckill(void *aux);
extern void sel(void *aux);
extern void max(void *aux);
extern void toggle(void *aux);
extern void floating(void *aux);
extern void tiling(void *aux);
extern void gravitate(Client *c, Bool invert);
/* draw.c */
......
......@@ -59,9 +59,9 @@
</li>
<li>
garbeam <b>does not</b> want any feedback to dwm. If you ask for support,
feature requests or if you report bugs, they will be <b>ignored</b>
with a high chance. dwm is only intended to fit garbeam's needs,
however you are free to download and distribute/relicense it, with the
feature requests, or if you report bugs, they will be <b>ignored</b>
with a high chance. dwm is only intended to fit garbeams needs.
However you are free to download and distribute/relicense it, with the
conditions of the <a href="http://wmii.de/cgi-bin/hgwebdir.cgi/dwm?f=f10eb1139362;file=LICENSE;style=raw">MIT/X Consortium license</a>.
</li>
</ul>
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment