dwm draws a small caret before the client title if it's a versatile client 1a25414a
Anselm R. Garbe · 2007-02-22 10:52 2 file(s) · +31 −6
draw.c +25 −1
7 7
/* static */
8 8
9 9
static void
10 +
drawcaret(unsigned long col[ColLast]) {
11 +
	int x;
12 +
	XGCValues gcv;
13 +
	XPoint pt[3];
14 +
15 +
	gcv.foreground = col[ColFG];
16 +
	XChangeGC(dpy, dc.gc, GCForeground, &gcv);
17 +
	x = (dc.font.ascent + dc.font.descent) / 2;
18 +
	pt[0].x = dc.x + 1;
19 +
	pt[0].y = dc.y + 1 + x;
20 +
	pt[1].x = 0;
21 +
	pt[1].y = -x;
22 +
	pt[2].x = x;
23 +
	pt[2].y = 0;
24 +
	XDrawLines(dpy, dc.drawable, dc.gc, pt, 3, CoordModePrevious);
25 +
}
26 +
27 +
static void
10 28
drawsquare(Bool filled, Bool empty, unsigned long col[ColLast]) {
11 29
	int x;
12 30
	XGCValues gcv;
79 97
	drawtext(stext, dc.norm);
80 98
	if((dc.w = dc.x - x) > bh) {
81 99
		dc.x = x;
82 -
		drawtext(sel ? sel->name : NULL, sel ? dc.sel : dc.norm);
100 +
		if(sel) {
101 +
			drawtext(sel->name, dc.sel);
102 +
			if(sel->isversatile)
103 +
				drawcaret(dc.sel);
104 +
		}
105 +
		else
106 +
			drawtext(NULL, dc.norm);
83 107
	}
84 108
	XCopyArea(dpy, dc.drawable, barwin, dc.gc, 0, 0, sw, bh, 0, 0);
85 109
	XSync(dpy, False);
dwm.1 +6 −5
19 19
tags. Selecting certain tags displays all windows with these tags.
20 20
.P
21 21
dwm contains a small status bar which displays all available tags, the layout,
22 -
the title of the focused window, and the text read from standard input. The
23 -
selected tags are indicated with a different color. The tags of the focused
24 -
window are indicated with a filled square in the top left corner.  The tags
25 -
which are applied to one or more windows are indicated with an empty square in
26 -
the top left corner.
22 +
the title of the focused window, and the text read from standard input. If
23 +
the focused window is in versatile state, a small caret is printed before
24 +
its title. The selected tags are indicated with a different color. The tags
25 +
of the focused window are indicated with a filled square in the top left
26 +
corner.  The tags which are applied to one or more windows are indicated
27 +
with an empty square in the top left corner.
27 28
.P
28 29
dwm draws a small border around windows to indicate the focus state.
29 30
.SH OPTIONS