main.c
changeset 782 92862ab407d5
parent 778 2ec66bdbb8ad
child 789 3edec0a35000
equal deleted inserted replaced
781:dde5852bf151 782:92862ab407d5
    16 #include <X11/Xproto.h>
    16 #include <X11/Xproto.h>
    17 
    17 
    18 /* extern */
    18 /* extern */
    19 
    19 
    20 char stext[256];
    20 char stext[256];
    21 int bh, bmw, screen, sx, sy, sw, sh, wax, way, waw, wah;
    21 int screen, sx, sy, sw, sh, wax, way, waw, wah;
    22 unsigned int ntags, numlockmask;
    22 unsigned int bh, ntags, numlockmask;
    23 Atom wmatom[WMLast], netatom[NetLast];
    23 Atom wmatom[WMLast], netatom[NetLast];
    24 Bool running = True;
    24 Bool running = True;
    25 Bool *seltag;
    25 Bool *seltag;
    26 Bool selscreen = True;
    26 Bool selscreen = True;
    27 Client *clients = NULL;
    27 Client *clients = NULL;
   244 	wa.event_mask = SubstructureRedirectMask | SubstructureNotifyMask
   244 	wa.event_mask = SubstructureRedirectMask | SubstructureNotifyMask
   245 		| EnterWindowMask | LeaveWindowMask;
   245 		| EnterWindowMask | LeaveWindowMask;
   246 	wa.cursor = cursor[CurNormal];
   246 	wa.cursor = cursor[CurNormal];
   247 	XChangeWindowAttributes(dpy, root, CWEventMask | CWCursor, &wa);
   247 	XChangeWindowAttributes(dpy, root, CWEventMask | CWCursor, &wa);
   248 	grabkeys();
   248 	grabkeys();
   249 	compileregexps();
   249 	compileregs();
   250 	for(ntags = 0; tags[ntags]; ntags++);
   250 	for(ntags = 0; tags[ntags]; ntags++);
   251 	seltag = emallocz(sizeof(Bool) * ntags);
   251 	seltag = emallocz(sizeof(Bool) * ntags);
   252 	seltag[0] = True;
   252 	seltag[0] = True;
   253 	/* style */
   253 	/* style */
   254 	dc.norm[ColBorder] = getcolor(NORMBORDERCOLOR);
   254 	dc.norm[ColBorder] = getcolor(NORMBORDERCOLOR);
   260 	setfont(FONT);
   260 	setfont(FONT);
   261 	/* geometry */
   261 	/* geometry */
   262 	sx = sy = 0;
   262 	sx = sy = 0;
   263 	sw = DisplayWidth(dpy, screen);
   263 	sw = DisplayWidth(dpy, screen);
   264 	sh = DisplayHeight(dpy, screen);
   264 	sh = DisplayHeight(dpy, screen);
   265 	bmw = textw(TILESYMBOL) > textw(FLOATSYMBOL) ? textw(TILESYMBOL) : textw(FLOATSYMBOL);
   265 	initlayouts();
   266 	/* bar */
   266 	/* bar */
   267 	dc.h = bh = dc.font.height + 2;
   267 	dc.h = bh = dc.font.height + 2;
   268 	wa.override_redirect = 1;
   268 	wa.override_redirect = 1;
   269 	wa.background_pixmap = ParentRelative;
   269 	wa.background_pixmap = ParentRelative;
   270 	wa.event_mask = ButtonPressMask | ExposureMask;
   270 	wa.event_mask = ButtonPressMask | ExposureMask;
   310 			drawtext(tags[i], dc.sel, sel && sel->tags[i], isoccupied(i));
   310 			drawtext(tags[i], dc.sel, sel && sel->tags[i], isoccupied(i));
   311 		else
   311 		else
   312 			drawtext(tags[i], dc.norm, sel && sel->tags[i], isoccupied(i));
   312 			drawtext(tags[i], dc.norm, sel && sel->tags[i], isoccupied(i));
   313 		dc.x += dc.w;
   313 		dc.x += dc.w;
   314 	}
   314 	}
   315 	dc.w = bmw;
   315 	dc.w = blw;
   316 	drawtext(arrange == dofloat ? FLOATSYMBOL : TILESYMBOL, dc.norm, False, False);
   316 	drawtext(lt->symbol, dc.norm, False, False);
   317 	x = dc.x + dc.w;
   317 	x = dc.x + dc.w;
   318 	dc.w = textw(stext);
   318 	dc.w = textw(stext);
   319 	dc.x = sw - dc.w;
   319 	dc.x = sw - dc.w;
   320 	if(dc.x < x) {
   320 	if(dc.x < x) {
   321 		dc.x = x;
   321 		dc.x = x;