just making dwm.h saner
This commit is contained in:
		
							parent
							
								
									04de5720e6
								
							
						
					
					
						commit
						206eb344e2
					
				@ -17,8 +17,8 @@ LIBS = -L/usr/lib -lc -L${X11LIB} -lX11
 | 
			
		||||
# flags
 | 
			
		||||
CFLAGS = -Os ${INCS} -DVERSION=\"${VERSION}\"
 | 
			
		||||
LDFLAGS = -s ${LIBS}
 | 
			
		||||
#CFLAGS = -g -std=c99 -pedantic -Wall -O2 ${INCS} -DVERSION=\"${VERSION}\"
 | 
			
		||||
#LDFLAGS = -g ${LIBS}
 | 
			
		||||
CFLAGS = -g -std=c99 -pedantic -Wall -O2 ${INCS} -DVERSION=\"${VERSION}\"
 | 
			
		||||
LDFLAGS = -g ${LIBS}
 | 
			
		||||
 | 
			
		||||
# Solaris
 | 
			
		||||
#CFLAGS = -fast ${INCS} -DVERSION=\"${VERSION}\"
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										65
									
								
								dwm.c
									
									
									
									
									
								
							
							
						
						
									
										65
									
								
								dwm.c
									
									
									
									
									
								
							@ -25,8 +25,6 @@
 | 
			
		||||
 *
 | 
			
		||||
 * To understand everything else, start reading main().
 | 
			
		||||
 */
 | 
			
		||||
#include "dwm.h"
 | 
			
		||||
 | 
			
		||||
#include <errno.h>
 | 
			
		||||
#include <locale.h>
 | 
			
		||||
#include <stdarg.h>
 | 
			
		||||
@ -41,73 +39,17 @@
 | 
			
		||||
#include <X11/cursorfont.h>
 | 
			
		||||
#include <X11/keysym.h>
 | 
			
		||||
#include <X11/Xatom.h>
 | 
			
		||||
#include <X11/Xlib.h>
 | 
			
		||||
#include <X11/Xproto.h>
 | 
			
		||||
#include <X11/Xutil.h>
 | 
			
		||||
 | 
			
		||||
#include "dwm.h"
 | 
			
		||||
 | 
			
		||||
/* macros */
 | 
			
		||||
#define BUTTONMASK		(ButtonPressMask | ButtonReleaseMask)
 | 
			
		||||
#define CLEANMASK(mask)		(mask & ~(numlockmask | LockMask))
 | 
			
		||||
#define MOUSEMASK		(BUTTONMASK | PointerMotionMask)
 | 
			
		||||
 | 
			
		||||
/* local typedefs */
 | 
			
		||||
typedef struct {
 | 
			
		||||
	const char *prop;
 | 
			
		||||
	const char *tags;
 | 
			
		||||
	Bool isfloating;
 | 
			
		||||
} Rule;
 | 
			
		||||
 | 
			
		||||
typedef struct {
 | 
			
		||||
	regex_t *propregex;
 | 
			
		||||
	regex_t *tagregex;
 | 
			
		||||
} Regs;
 | 
			
		||||
 | 
			
		||||
/* variables */
 | 
			
		||||
char stext[256];
 | 
			
		||||
double mwfact;
 | 
			
		||||
int screen, sx, sy, sw, sh, wax, way, waw, wah;
 | 
			
		||||
int (*xerrorxlib)(Display *, XErrorEvent *);
 | 
			
		||||
unsigned int bh, bpos;
 | 
			
		||||
unsigned int blw = 0;
 | 
			
		||||
unsigned int ltidx = 0; /* default */
 | 
			
		||||
unsigned int nlayouts = 0;
 | 
			
		||||
unsigned int nrules = 0;
 | 
			
		||||
unsigned int numlockmask = 0;
 | 
			
		||||
void (*handler[LASTEvent]) (XEvent *) = {
 | 
			
		||||
	[ButtonPress] = buttonpress,
 | 
			
		||||
	[ConfigureRequest] = configurerequest,
 | 
			
		||||
	[ConfigureNotify] = configurenotify,
 | 
			
		||||
	[DestroyNotify] = destroynotify,
 | 
			
		||||
	[EnterNotify] = enternotify,
 | 
			
		||||
	[LeaveNotify] = leavenotify,
 | 
			
		||||
	[Expose] = expose,
 | 
			
		||||
	[KeyPress] = keypress,
 | 
			
		||||
	[MappingNotify] = mappingnotify,
 | 
			
		||||
	[MapRequest] = maprequest,
 | 
			
		||||
	[PropertyNotify] = propertynotify,
 | 
			
		||||
	[UnmapNotify] = unmapnotify
 | 
			
		||||
};
 | 
			
		||||
Atom wmatom[WMLast], netatom[NetLast];
 | 
			
		||||
Bool otherwm, readin;
 | 
			
		||||
Bool running = True;
 | 
			
		||||
Bool selscreen = True;
 | 
			
		||||
Client *clients = NULL;
 | 
			
		||||
Client *sel = NULL;
 | 
			
		||||
Client *stack = NULL;
 | 
			
		||||
Cursor cursor[CurLast];
 | 
			
		||||
Display *dpy;
 | 
			
		||||
DC dc = {0};
 | 
			
		||||
Window barwin, root;
 | 
			
		||||
Regs *regs = NULL;
 | 
			
		||||
 | 
			
		||||
/* configuration, allows nested code to access above variables */
 | 
			
		||||
#include "config.h"
 | 
			
		||||
 | 
			
		||||
/* Statically define the number of tags. */
 | 
			
		||||
unsigned int ntags = sizeof tags / sizeof tags[0];
 | 
			
		||||
Bool seltags[sizeof tags / sizeof tags[0]] = {[0] = True};
 | 
			
		||||
Bool prevtags[sizeof tags / sizeof tags[0]] = {[0] = True};
 | 
			
		||||
 | 
			
		||||
/* functions*/
 | 
			
		||||
void
 | 
			
		||||
applyrules(Client *c) {
 | 
			
		||||
	static char buf[512];
 | 
			
		||||
@ -1032,7 +974,6 @@ quit(const char *arg) {
 | 
			
		||||
 | 
			
		||||
void
 | 
			
		||||
resize(Client *c, int x, int y, int w, int h, Bool sizehints) {
 | 
			
		||||
	double dx, dy, max, min, ratio;
 | 
			
		||||
	XWindowChanges wc;
 | 
			
		||||
 | 
			
		||||
	if(sizehints) {
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										59
									
								
								dwm.h
									
									
									
									
									
								
							
							
						
						
									
										59
									
								
								dwm.h
									
									
									
									
									
								
							@ -1,5 +1,4 @@
 | 
			
		||||
/* See LICENSE file for copyright and license details. */
 | 
			
		||||
#include <X11/Xlib.h>
 | 
			
		||||
 | 
			
		||||
/* enums */
 | 
			
		||||
enum { BarTop, BarBot, BarOff };			/* bar position */
 | 
			
		||||
@ -53,6 +52,17 @@ typedef struct {
 | 
			
		||||
	void (*arrange)(void);
 | 
			
		||||
} Layout;
 | 
			
		||||
 | 
			
		||||
typedef struct {
 | 
			
		||||
	const char *prop;
 | 
			
		||||
	const char *tags;
 | 
			
		||||
	Bool isfloating;
 | 
			
		||||
} Rule;
 | 
			
		||||
 | 
			
		||||
typedef struct {
 | 
			
		||||
	regex_t *propregex;
 | 
			
		||||
	regex_t *tagregex;
 | 
			
		||||
} Regs;
 | 
			
		||||
 | 
			
		||||
/* functions */
 | 
			
		||||
void applyrules(Client *c);
 | 
			
		||||
void arrange(void);
 | 
			
		||||
@ -132,3 +142,50 @@ int xerror(Display *dpy, XErrorEvent *ee);
 | 
			
		||||
int xerrordummy(Display *dsply, XErrorEvent *ee);
 | 
			
		||||
int xerrorstart(Display *dsply, XErrorEvent *ee);
 | 
			
		||||
void zoom(const char *arg);
 | 
			
		||||
 | 
			
		||||
/* variables */
 | 
			
		||||
char stext[256];
 | 
			
		||||
double mwfact;
 | 
			
		||||
int screen, sx, sy, sw, sh, wax, way, waw, wah;
 | 
			
		||||
int (*xerrorxlib)(Display *, XErrorEvent *);
 | 
			
		||||
unsigned int bh, bpos;
 | 
			
		||||
unsigned int blw = 0;
 | 
			
		||||
unsigned int ltidx = 0; /* default */
 | 
			
		||||
unsigned int nlayouts = 0;
 | 
			
		||||
unsigned int nrules = 0;
 | 
			
		||||
unsigned int numlockmask = 0;
 | 
			
		||||
void (*handler[LASTEvent]) (XEvent *) = {
 | 
			
		||||
	[ButtonPress] = buttonpress,
 | 
			
		||||
	[ConfigureRequest] = configurerequest,
 | 
			
		||||
	[ConfigureNotify] = configurenotify,
 | 
			
		||||
	[DestroyNotify] = destroynotify,
 | 
			
		||||
	[EnterNotify] = enternotify,
 | 
			
		||||
	[LeaveNotify] = leavenotify,
 | 
			
		||||
	[Expose] = expose,
 | 
			
		||||
	[KeyPress] = keypress,
 | 
			
		||||
	[MappingNotify] = mappingnotify,
 | 
			
		||||
	[MapRequest] = maprequest,
 | 
			
		||||
	[PropertyNotify] = propertynotify,
 | 
			
		||||
	[UnmapNotify] = unmapnotify
 | 
			
		||||
};
 | 
			
		||||
Atom wmatom[WMLast], netatom[NetLast];
 | 
			
		||||
Bool otherwm, readin;
 | 
			
		||||
Bool running = True;
 | 
			
		||||
Bool selscreen = True;
 | 
			
		||||
Client *clients = NULL;
 | 
			
		||||
Client *sel = NULL;
 | 
			
		||||
Client *stack = NULL;
 | 
			
		||||
Cursor cursor[CurLast];
 | 
			
		||||
Display *dpy;
 | 
			
		||||
DC dc = {0};
 | 
			
		||||
Window barwin, root;
 | 
			
		||||
Regs *regs = NULL;
 | 
			
		||||
 | 
			
		||||
/* configuration, allows nested code to access above variables */
 | 
			
		||||
#include "config.h"
 | 
			
		||||
 | 
			
		||||
/* Statically define the number of tags. */
 | 
			
		||||
unsigned int ntags = sizeof tags / sizeof tags[0];
 | 
			
		||||
Bool seltags[sizeof tags / sizeof tags[0]] = {[0] = True};
 | 
			
		||||
Bool prevtags[sizeof tags / sizeof tags[0]] = {[0] = True};
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user