about summary refs log tree commit diff stats
path: root/event.c
Commit message (Collapse)AuthorAgeFilesLines
* renamed untiled into floating, keeping tiled instead of tiling (afaik tiled ↵Anselm R. Garbe2007-02-221-4/+4
| | | | sounds more correct) - English speakers convinced me
* renamed versatile into untiledAnselm R. Garbe2007-02-221-4/+4
|
* fixed some issues due to the Arg->const char * transitionAnselm R. Garbe2007-02-221-9/+9
|
* replaced Arg union with const char *arg, seems cleaner to me, even if we ↵Anselm R. Garbe2007-02-221-13/+15
| | | | need atoi() in some places
* removed b
/* (C)opyright MMVI-MMVII Anselm R. Garbe <garbeam at gmail dot com>
 * See LICENSE file for license details.
 */

#define TAGS \
const char *tags[] = { "1", "2", "3", "4", "5", "6", "7", "8", "9", NULL };

#define BORDERPX		1
#define DEFMODE			dotile		/* dofloat */
#define FLOATSYMBOL		"><>"
#define TILESYMBOL		"[]="

#define FONT			"-*-fixed-medium-r-normal-*-13-*-*-*-*-*-*-*"
#define NORMBORDERCOLOR		"#dddddd"
#define NORMBGCOLOR		"#eeeeee"
#define NORMFGCOLOR		"#222222"
#define SELBORDERCOLOR		"#ff0000"
#define SELBGCOLOR		"#006699"
#define SELFGCOLOR		"#ffffff"

#define MASTER			600		/* per thousand */
#define MODKEY			Mod1Mask
#define NMASTER			1		/* clients in master area */
#define SNAP			20		/* pixel */

#define KEYS \
static Key key[] = { \
	/* modifier			key		function	argument */ \
	{ MODKEY|ShiftMask,		XK_Return,	spawn,		{ .cmd = "exec xterm" } }, \
	{ MODKEY,			XK_Tab,		focusnext,	{ 0 } }, \
	{ MODKEY|ShiftMask,		XK_Tab,		focusprev,	{ 0 } }, \
	{ MODKEY,			XK_Return,	zoom,		{ 0 } }, \
	{ MODKEY,			XK_g,		resizemaster,	{ .i = 15 } }, \
	{ MODKEY,			XK_s,		resizemaster,	{ .i = -15 } }, \
	{ MODKEY,			XK_i,		incnmaster,	{ .i = 1 } }, \
	{ MODKEY,			XK_d,		incnmaster,	{ .i = -1 } }, \
	{ MODKEY|ShiftMask,		XK_0,		tag,		{ .i = -1 } }, \
	{ MODKEY|ShiftMask,		XK_1,		tag,		{ .i = 0 } }, \
	{ MODKEY|ShiftMask,		XK_2,		tag,		{ .i = 1 } }, \
	{ MODKEY|ShiftMask,		XK_3,		tag,		{ .i = 2 } }, \
	{ MODKEY|ShiftMask,		XK_4,		tag,		{ .i = 3 } }, \
	{ MODKEY|ShiftMask,		XK_5,		tag,		{ .i = 4 } }, \
	{ MODKEY|ShiftMask,		XK_6,		tag,		{ .i = 5 } }, \
	{ MODKEY|ShiftMask,		XK_7,		tag,		{ .i = 6 } }, \
	{ MODKEY|ShiftMask,		XK_8,		tag,		{ .i = 7 } }, \
	{ MODKEY|ShiftMask,		XK_9,		tag,		{ .i = 8 } }, \
	{ MODKEY|ControlMask|ShiftMask,	XK_1,		toggletag,	{ .i = 0 } }, \
	{ MODKEY|ControlMask|ShiftMask,	XK_2,		toggletag,	{ .i = 1 } }, \
	{ MODKEY|ControlMask|ShiftMask,	XK_3,		toggletag,	{ .i = 2 } }, \
	{ MODKEY|ControlMask|ShiftMask,	XK_4,		toggletag,	{ .i = 3 } }, \
	{ MODKEY|ControlMask|ShiftMask,	XK_5,		toggletag,	{ .i = 4 } }, \
	{ MODKEY|ControlMask|ShiftMask,	XK_6,		toggletag,	{ .i = 5 } }, \
	{ MODKEY|ControlMask|ShiftMask,	XK_7,		toggletag,	{ .i = 6 } }, \
	{ MODKEY|ControlMask|ShiftMask,	XK_8,		toggletag,	{ .i = 7 } }, \
	{ MODKEY|ControlMask|ShiftMask,	XK_9,		toggletag,	{ .i = 8 } }, \
	{ MODKEY|ShiftMask,		XK_c,		killclient,	{ 0 } }, \
	{ MODKEY,			XK_space,	togglemode,	{ 0 } }, \
	{ MODKEY|ShiftMask,		XK_space,	togglefloat,	{ 0 } }, \
	{ MODKEY,			XK_0,		view,		{ .i = -1 } }, \
	{ MODKEY,			XK_1,		view,		{ .i = 0 } }, \
	{ MODKEY,			XK_2,		view,		{ .i = 1 } }, \
	{ MODKEY,			XK_3,		view,		{ .i = 2 } }, \
	{ MODKEY,			XK_4,		view,		{ .i = 3 } }, \
	{ MODKEY,			XK_5,		view,		{ .i = 4 } }, \
	{ MODKEY,			XK_6,		view,		{ .i = 5 } }, \
	{ MODKEY,			XK_7,		view,		{ .i = 6 } }, \
	{ MODKEY,			XK_8,		view,		{ .i = 7 } }, \
	{ MODKEY,			XK_9,		view,		{ .i = 8 } }, \
	{ MODKEY|ControlMask,		XK_1,		toggleview,	{ .i = 0 } }, \
	{ MODKEY|ControlMask,		XK_2,		toggleview,	{ .i = 1 } }, \
	{ MODKEY|ControlMask,		XK_3,		toggleview,	{ .i = 2 } }, \
	{ MODKEY|ControlMask,		XK_4,		toggleview,	{ .i = 3 } }, \
	{ MODKEY|ControlMask,		XK_5,		toggleview,	{ .i = 4 } }, \
	{ MODKEY|ControlMask,		XK_6,		toggleview,	{ .i = 5 } }, \
	{ MODKEY|ControlMask,		XK_7,		toggleview,	{ .i = 6 } }, \
	{ MODKEY|ControlMask,		XK_8,		toggleview,	{ .i = 7 } }, \
	{ MODKEY|ControlMask,		XK_9,		toggleview,	{ .i = 8 } }, \
	{ MODKEY|ShiftMask,		XK_q,		quit,		{ 0 } }, \
};

/* Query class:instance:title for regex matching info with following command:
 * xprop | awk -F '"' '/^WM_CLASS/ { printf("%s:%s:",$4,$2) }; /^WM_NAME/ { printf("%s\n",$2) }' */
#define RULES \
static Rule rule[] = { \
	/* class:instance:title regex	tags regex	isfloat */ \
	{ "Gimp.*",			NULL,		True }, \
};
s='nohover-highlight'>| * I don't see any reason why we should select for input on override-redirect ↵Anselm R. Garbe2007-02-121-4/+1 | | | | windows? * removing all EnterNotifys after resizeAnselm R. Garbe2007-02-121-0/+1 | * added pointer warp on drop in resizeAnselm R. Garbe2007-02-121-0/+2 | * replaced getproto with a saner function, now old-school artifacts of WM ↵Anselm R. Garbe2007-02-071-4/+0 | | | | times in the early 90s completely disappeared, no punned pointer warning anymore ;) * renamed activescreen into selscreen 3.2Anselm R. Garbe2007-01-231-2/+2 | * small changesAnselm R. Garbe2007-01-231-2/+2 | * I think this is the best solution of multihead supportAnselm R. Garbe2007-01-231-1/+1 | * this variant is known to work, but focus() is ugly - we need in general a ↵Anselm R. Garbe2007-01-221-1/+1 | | | | better way to handle multihead, this issel-stuff looks awkward (maybe it might be a good idea to set sel to NULL but to introduce a Client *revert which is set if a screen is unfocused, have to think about it further). * applied Sanders all5.patch (thanks for your weekend session, Sander!)Anselm R. Garbe2007-01-221-26/+24 | * leavenotify also don't needs the checkAnselm R. Garbe2007-01-191-5/+2 | * deciding for focus(NULL);Anselm R. Garbe2007-01-191-2/+2 | * replaced XSetBorder.../focus()Anselm R. Garbe2007-01-191-1/+1 | * yet another multihead fix by Christof MusikAnselm R. Garbe2007-01-191-0/+2 | * applied a modified version of Christof Musik's multihead patch (though this ↵Anselm R. Garbe2007-01-181-1/+4 | | | | is not sure if it works in all cases, have to wait for an ACK by Christof) * Jukka, thanks for being faster than me!Anselm R. Garbe2007-01-151-1/+0 | * removed drawclient and drawall (they performed useless operations/consumed ↵Anselm R. Garbe2007-01-151-5/+3 | | | | useless cpu cycles) * removed client title barAnselm R. Garbe2007-01-141-5/+2 | * added comment to %u in config.default.h, added Button{4.5} support on mode labelAnselm R. Garbe2007-01-101-2/+14 | * renamed drawtitle into drawclientAnselm R. Garbe2007-01-041-2/+2 | * correctionsarg@mig292007-01-021-1/+1 | * next version will contain updated copyright noticearg@mig292007-01-021-1/+1 | * renamed updatesize into updatesizehints (thx to Sander for this hint)arg@mig292007-01-011-1/+1 | * removed gravitate for the momentarg@mig292006-12-111-2/+0 | * applied Alex Elide's tricky patch, thanks!arg@mig292006-11-271-1/+0 | * returning to old Key structarg@mig292006-11-271-5/+4 | * changing Key.func into Key.func[NFUNCS], this allows sequences execution of ↵arg@mig292006-11-271-4/+5 | | | | functions per keypress (avoids implementing useless masterfunctions which call atomic ones)