Introduction
Introduction Statistics Contact Development Disclaimer Help
tapplied Sanders patches - dwm - [fork] customized build of dwm, the dynamic wi…
git clone git://src.adamsgaard.dk/dwm
Log
Files
Refs
README
LICENSE
---
commit 7b5638f61d5c8b5a76bc3f7a5962cb7490da3b6b
parent 937cabfa0aad7eef6d25e9d142a478163de200c5
Author: [email protected] <unknown>
Date: Tue, 1 Aug 2006 12:32:33 +0200
applied Sanders patches
Diffstat:
M Makefile | 3 +--
M README | 17 +++++++++--------
M client.c | 6 +++---
M config.mk | 24 +++++++++---------------
M dwm.1 | 24 +++++++-----------------
M dwm.h | 8 ++++++--
M event.c | 14 +++-----------
M tag.c | 4 ++++
8 files changed, 42 insertions(+), 58 deletions(-)
---
diff --git a/Makefile b/Makefile
t@@ -13,7 +13,6 @@ all: options dwm
options:
@echo dwm build options:
- @echo "LIBS = ${LIBS}"
@echo "CFLAGS = ${CFLAGS}"
@echo "LDFLAGS = ${LDFLAGS}"
@echo "CC = ${CC}"
t@@ -29,7 +28,7 @@ dwm: ${OBJ}
@${CC} -o $@ ${OBJ} ${LDFLAGS}
clean:
- rm -f dwm *.o core dwm-${VERSION}.tar.gz
+ rm -f dwm *.o dwm-${VERSION}.tar.gz
dist: clean
mkdir -p dwm-${VERSION}
diff --git a/README b/README
t@@ -1,6 +1,6 @@
dwm - dynamic window manager
----------------------------
-dwm is an extremly fast, small, and dynamic X11 window manager.
+dwm is an extremely fast, small, and dynamic X11 window manager.
Requirements
t@@ -10,8 +10,8 @@ In order to build dwm you need the Xlib header files.
Installation
------------
-Edit config.mk to match your local setup. dwm is installed into
-the /usr/local namespace by default.
+Edit config.mk to match your local setup (dwm is installed into
+the /usr/local namespace by default).
Afterwards enter the following command to build and install dwm (if
necessary as root):
t@@ -35,16 +35,17 @@ This will start dwm on display :1 of the host foo.bar.
Displaying status info
----------------------
-In order to display status info in the bar, you can do following
-in .xinitrc:
+In order to display status info in the bar, you can do something
+like this in your .xinitrc:
while true
do
echo `date` `uptime | sed 's/.*://; s/,//g'`
- sleep 2
+ sleep 1
done | dwm
+
Configuration
-------------
-The configuration of dwm is done by customizing source code,
-grep for CUSTOMIZE keyword.
+The configuration of dwm is done by customizing its source code
+(grep for the CUSTOMIZE keyword).
diff --git a/client.c b/client.c
t@@ -244,11 +244,11 @@ manage(Window w, XWindowAttributes *wa)
c->next = clients;
clients = c;
- XGrabButton(dpy, Button1, MODKEY, c->win, False, ButtonPressMask,
+ XGrabButton(dpy, Button1, MODKEY, c->win, False, ButtonMask,
GrabModeAsync, GrabModeSync, None, None);
- XGrabButton(dpy, Button2, MODKEY, c->win, False, ButtonPressMask,
+ XGrabButton(dpy, Button2, MODKEY, c->win, False, ButtonMask,
GrabModeAsync, GrabModeSync, None, None);
- XGrabButton(dpy, Button3, MODKEY, c->win, False, ButtonPressMask,
+ XGrabButton(dpy, Button3, MODKEY, c->win, False, ButtonMask,
GrabModeAsync, GrabModeSync, None, None);
if(!c->isfloat)
diff --git a/config.mk b/config.mk
t@@ -7,24 +7,18 @@ MANPREFIX = ${PREFIX}/share/man
X11INC = /usr/X11R6/include
X11LIB = /usr/X11R6/lib
-VERSION = 0.5
-
# includes and libs
-LIBS = -L${PREFIX}/lib -L/usr/lib -lc -L${X11LIB} -lX11
+INCS = -I/usr/lib -I${X11INC}
+LIBS = -L/usr/lib -lc -L${X11LIB} -lX11
-# Linux/BSD
-CFLAGS = -O3 -I. -I${PREFIX}/include -I/usr/include -I${X11INC} \
- -DVERSION=\"${VERSION}\"
+# flags
+CFLAGS = -O3 ${INCS} -DVERSION=\"${VERSION}\"
LDFLAGS = ${LIBS}
-#CFLAGS = -g -Wall -O2 -I. -I${PREFIX}/include -I/usr/include -I${X11INC} \
-# -DVERSION=\"${VERSION}\"
+#CFLAGS = -g -Wall -O2 ${INCS} -DVERSION=\"${VERSION}\"
#LDFLAGS = -g ${LIBS}
-
-# Solaris
-#CFLAGS = -fast -xtarget=ultra ${INCLUDES} -DVERSION=\"${VERSION}\"
-#LIBS += -lnsl -lsocket
-
-AR = ar cr
+# compiler
CC = cc
-RANLIB = ranlib
+
+# dwm version
+VERSION = 0.6
diff --git a/dwm.1 b/dwm.1
t@@ -21,7 +21,7 @@ time. But each window may contain more than one tag, which m…
several views.
.P
.B dwm
-consists of a small status bar which reads the text displayed from standard
+has a small status bar which reads the text displayed from standard
input, if written. It draws 1-pixel borders around windows to indicate the
focus state. Unfocused windows contain a small bar in front of the window
displaying the tags and the window title.
t@@ -56,14 +56,12 @@ Focus
tag
.TP
.B Mod1-space
-(Re-)arrange
-.B all
-windows tiled
-.TP
-.B Mod1-Shift-space
-(Re-)arrange
-.B all
-windows floating
+Toggle between
+.B tiled
+and
+.B floating
+mode (affects
+.BR "all windows" )
.TP
.B Mod1-Shift-[0..n]
Apply
t@@ -79,14 +77,6 @@ Quit
Start
.B terminal
.TP
-.B Mod1-Shift-w
-Start
-.B web browser
-.TP
-.B Mod1-Shift-l
-Lock
-.B screen
-.TP
.B Mod1-Control-[0..n]
Append
.B nth
diff --git a/dwm.h b/dwm.h
t@@ -25,9 +25,12 @@ enum { Tfnord, Tdev, Tnet, Twork, Tmisc, TLast };
/* END CUSTOMIZE */
+/* mask shorthands, used in event.c and client.c */
+#define ButtonMask (ButtonPressMask | ButtonReleaseMask)
+#define MouseMask (ButtonMask | PointerMotionMask)
+
typedef union Arg Arg;
typedef struct Client Client;
-typedef enum Corner Corner;
typedef struct DC DC;
typedef struct Fnt Fnt;
t@@ -43,7 +46,8 @@ enum { WMProtocols, WMDelete, WMLast };
/* cursor */
enum { CurNormal, CurResize, CurMove, CurLast };
-enum Corner { TopLeft, TopRight, BotLeft, BotRight };
+/* windowcorners */
+typedef enum { TopLeft, TopRight, BotLeft, BotRight } Corner;
struct Fnt {
int ascent;
diff --git a/event.c b/event.c
t@@ -8,9 +8,6 @@
#include <X11/keysym.h>
#include <X11/Xatom.h>
-#define ButtonMask (ButtonPressMask | ButtonReleaseMask)
-#define MouseMask (ButtonMask | PointerMotionMask)
-
/* CUSTOMIZE */
typedef struct {
t@@ -20,17 +17,13 @@ typedef struct {
Arg arg;
} Key;
-/*
const char *browse[] = { "firefox", NULL };
const char *gimp[] = { "gimp", NULL };
-*/
-const char *term[] = { "xterm", NULL };
-/*
+const char *term[] = { /*"xterm", NULL };*/
"urxvt", "-tr", "+sb", "-bg", "black", "-fg", "white", "-cr", "white",
"-fn", "-*-terminus-medium-*-*-*-13-*-*-*-*-*-iso10646-*", NULL
};
const char *xlock[] = { "xlock", NULL };
-*/
static Key key[] = {
/* modifier key function argument…
t@@ -57,11 +50,9 @@ static Key key[] = {
{ MODKEY|ShiftMask, XK_c, killclient, { 0…
{ MODKEY|ShiftMask, XK_q, quit, {…
{ MODKEY|ShiftMask, XK_Return, spawn, { .…
- /*
{ MODKEY|ShiftMask, XK_g, spawn, …
{ MODKEY|ShiftMask, XK_l, spawn, …
{ MODKEY|ShiftMask, XK_w, spawn, …
- */
};
/* END CUSTOMIZE */
t@@ -172,6 +163,7 @@ buttonpress(XEvent *e)
}
}
else if((c = getclient(ev->window))) {
+ focus(c);
switch(ev->button) {
default:
break;
t@@ -247,7 +239,7 @@ enternotify(XEvent *e)
Client *c;
XCrossingEvent *ev = &e->xcrossing;
- if(ev->mode != NotifyNormal || ev->detail == NotifyInferior)
+ if(ev->detail == NotifyInferior)
return;
if((c = getclient(ev->window)))
diff --git a/tag.c b/tag.c
t@@ -67,6 +67,8 @@ dofloat(Arg *arg)
higher(sel);
focus(sel);
}
+ else
+ XSetInputFocus(dpy, root, RevertToPointerRoot, Current…
}
drawall();
}
t@@ -130,6 +132,8 @@ dotile(Arg *arg)
higher(sel);
focus(sel);
}
+ else
+ XSetInputFocus(dpy, root, RevertToPointerRoot, Current…
}
drawall();
}
You are viewing proxied material from mx1.adamsgaard.dk. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.