dwm draws a small caret before the client title if it's a versatile client
1a25414a
2 file(s) · +31 −6
| 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); |
|
| 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 |