Xinqi Bao's Git
projects
/
dwm.git
/ blobdiff
summary
|
log
|
commit
|
diff
|
tree
raw
|
inline
| side by side
using double-linked list in order to get correct prev focus handling
[dwm.git]
/
dwm.h
diff --git
a/dwm.h
b/dwm.h
index
5a714f2
..
8a7237c
100644
(file)
--- a/
dwm.h
+++ b/
dwm.h
@@
-5,12
+5,13
@@
#include <X11/Xlib.h>
#include <X11/Xlib.h>
-/*
********* CUSTOMIZE *********
*/
+/*
CUSTOMIZE
*/
#define FONT "-*-terminus-medium-*-*-*-13-*-*-*-*-*-iso10646-*"
#define BGCOLOR "#0a2c2d"
#define FGCOLOR "#ddeeee"
#define BORDERCOLOR "#176164"
#define FONT "-*-terminus-medium-*-*-*-13-*-*-*-*-*-iso10646-*"
#define BGCOLOR "#0a2c2d"
#define FGCOLOR "#ddeeee"
#define BORDERCOLOR "#176164"
+#define MODKEY Mod1Mask /* Mod4Mask */
/*
#define BGCOLOR "#666699"
#define FGCOLOR "#eeeeee"
/*
#define BGCOLOR "#666699"
#define FGCOLOR "#eeeeee"
@@
-22,15
+23,13
@@
/* tags */
enum { Tscratch, Tdev, Twww, Twork, TLast };
/* tags */
enum { Tscratch, Tdev, Twww, Twork, TLast };
-/*
********* CUSTOMIZE *********
*/
+/*
END CUSTOMIZE
*/
typedef union Arg Arg;
typedef struct Client Client;
typedef enum Corner Corner;
typedef struct DC DC;
typedef struct Fnt Fnt;
typedef union Arg Arg;
typedef struct Client Client;
typedef enum Corner Corner;
typedef struct DC DC;
typedef struct Fnt Fnt;
-typedef struct Key Key;
-typedef struct Rule Rule;
union Arg {
const char **argv;
union Arg {
const char **argv;
@@
-68,35
+67,20
@@
struct Client {
char name[256];
char *tags[TLast];
int proto;
char name[256];
char *tags[TLast];
int proto;
- int *x, *y, *w, *h; /* current geom */
- int bx, by, bw, bh; /* title bar */
- int fx, fy, fw, fh; /* floating geom */
- int tx, ty, tw, th; /* tiled geom */
+ int x, y, w, h;
+ int tx, ty, tw, th; /* title */
int basew, baseh, incw, inch, maxw, maxh, minw, minh;
int grav;
unsigned int border;
long flags;
Bool isfloat;
int basew, baseh, incw, inch, maxw, maxh, minw, minh;
int grav;
unsigned int border;
long flags;
Bool isfloat;
+ Bool ismax;
Client *next;
Client *next;
- Client *
revert
;
+ Client *
prev
;
Window win;
Window title;
};
Window win;
Window title;
};
-struct Rule {
- const char *class;
- const char *instance;
- char *tags[TLast];
- Bool isfloat;
-};
-
-struct Key {
- unsigned long mod;
- KeySym keysym;
- void (*func)(Arg *arg);
- Arg arg;
-};
-
extern char *tags[TLast], stext[1024];
extern int tsel, screen, sx, sy, sw, sh, bx, by, bw, bh, mw;
extern void (*handler[LASTEvent])(XEvent *);
extern char *tags[TLast], stext[1024];
extern int tsel, screen, sx, sy, sw, sh, bx, by, bw, bh, mw;
extern void (*handler[LASTEvent])(XEvent *);
@@
-107,7
+91,6
@@
extern Client *clients, *sel;
extern Cursor cursor[CurLast];
extern DC dc;
extern Display *dpy;
extern Cursor cursor[CurLast];
extern DC dc;
extern Display *dpy;
-extern Key key[];
extern Window root, barwin;
/* client.c */
extern Window root, barwin;
/* client.c */
@@
-122,12
+105,11
@@
extern void higher(Client *c);
extern void killclient(Arg *arg);
extern void lower(Client *c);
extern void manage(Window w, XWindowAttributes *wa);
extern void killclient(Arg *arg);
extern void lower(Client *c);
extern void manage(Window w, XWindowAttributes *wa);
-extern void maximize(Arg *arg);
extern void pop(Client *c);
extern void resize(Client *c, Bool inc, Corner sticky);
extern void pop(Client *c);
extern void resize(Client *c, Bool inc, Corner sticky);
-extern void setgeom(Client *c);
extern void setsize(Client *c);
extern void settitle(Client *c);
extern void setsize(Client *c);
extern void settitle(Client *c);
+extern void togglemax(Arg *arg);
extern void unmanage(Client *c);
extern void zoom(Arg *arg);
extern void unmanage(Client *c);
extern void zoom(Arg *arg);
@@
-153,9
+135,11
@@
extern void appendtag(Arg *arg);
extern void dofloat(Arg *arg);
extern void dotile(Arg *arg);
extern Client *getnext(Client *c, unsigned int t);
extern void dofloat(Arg *arg);
extern void dotile(Arg *arg);
extern Client *getnext(Client *c, unsigned int t);
+extern Client *getprev(Client *c);
extern void heretag(Arg *arg);
extern void replacetag(Arg *arg);
extern void settags(Client *c);
extern void heretag(Arg *arg);
extern void replacetag(Arg *arg);
extern void settags(Client *c);
+extern void togglemode(Arg *arg);
extern void view(Arg *arg);
/* util.c */
extern void view(Arg *arg);
/* util.c */