The definition of the reverse cursor is now up to the user.
This commit is contained in:
		| @@ -94,16 +94,18 @@ static const char *colorname[] = { | |||||||
|  |  | ||||||
| 	/* more colors can be added after 255 to use with DefaultXX */ | 	/* more colors can be added after 255 to use with DefaultXX */ | ||||||
| 	"#cccccc", | 	"#cccccc", | ||||||
|  | 	"#555555", | ||||||
| }; | }; | ||||||
|  |  | ||||||
|  |  | ||||||
| /* | /* | ||||||
|  * Default colors (colorname index) |  * Default colors (colorname index) | ||||||
|  * foreground, background, cursor |  * foreground, background, cursor, reverse cursor | ||||||
|  */ |  */ | ||||||
| static unsigned int defaultfg = 7; | static unsigned int defaultfg = 7; | ||||||
| static unsigned int defaultbg = 0; | static unsigned int defaultbg = 0; | ||||||
| static unsigned int defaultcs = 256; | static unsigned int defaultcs = 256; | ||||||
|  | static unsigned int defaultrcs = 257; | ||||||
|  |  | ||||||
| /* | /* | ||||||
|  * Default shape of cursor |  * Default shape of cursor | ||||||
|   | |||||||
							
								
								
									
										15
									
								
								st.c
									
									
									
									
									
								
							
							
						
						
									
										15
									
								
								st.c
									
									
									
									
									
								
							| @@ -3831,7 +3831,6 @@ xdrawcursor(void) | |||||||
| 	Glyph g = {' ', ATTR_NULL, defaultbg, defaultcs}, og; | 	Glyph g = {' ', ATTR_NULL, defaultbg, defaultcs}, og; | ||||||
| 	int ena_sel = sel.ob.x != -1 && sel.alt == IS_SET(MODE_ALTSCREEN); | 	int ena_sel = sel.ob.x != -1 && sel.alt == IS_SET(MODE_ALTSCREEN); | ||||||
| 	Color drawcol; | 	Color drawcol; | ||||||
| 	XRenderColor dccol; |  | ||||||
|  |  | ||||||
| 	LIMIT(oldx, 0, term.col-1); | 	LIMIT(oldx, 0, term.col-1); | ||||||
| 	LIMIT(oldy, 0, term.row-1); | 	LIMIT(oldy, 0, term.row-1); | ||||||
| @@ -3852,16 +3851,7 @@ xdrawcursor(void) | |||||||
|  |  | ||||||
| 	g.u = term.line[term.c.y][term.c.x].u; | 	g.u = term.line[term.c.y][term.c.x].u; | ||||||
| 	if (ena_sel && selected(term.c.x, term.c.y)) { | 	if (ena_sel && selected(term.c.x, term.c.y)) { | ||||||
| 		/* | 		drawcol = dc.col[defaultrcs]; | ||||||
| 		 * Allocate the drawing color which is the reverse of |  | ||||||
| 		 * defaultcs, if we are selected. |  | ||||||
| 		 */ |  | ||||||
| 		dccol.red = ~dc.col[defaultcs].color.red; |  | ||||||
| 		dccol.green = ~dc.col[defaultcs].color.green; |  | ||||||
| 		dccol.blue = ~dc.col[defaultcs].color.blue; |  | ||||||
| 		dccol.alpha = ~dc.col[defaultcs].color.alpha; |  | ||||||
| 		XftColorAllocValue(xw.dpy, xw.vis, xw.cmap, &dccol, &drawcol); |  | ||||||
|  |  | ||||||
| 		g.mode ^= ATTR_REVERSE; | 		g.mode ^= ATTR_REVERSE; | ||||||
| 	} else { | 	} else { | ||||||
| 		drawcol = dc.col[defaultcs]; | 		drawcol = dc.col[defaultcs]; | ||||||
| @@ -3889,7 +3879,8 @@ xdrawcursor(void) | |||||||
| 		case 4: /* Steady Underline */ | 		case 4: /* Steady Underline */ | ||||||
| 			XftDrawRect(xw.draw, &drawcol, | 			XftDrawRect(xw.draw, &drawcol, | ||||||
| 					borderpx + curx * xw.cw, | 					borderpx + curx * xw.cw, | ||||||
| 					borderpx + (term.c.y + 1) * xw.ch - cursorthickness, | 					borderpx + (term.c.y + 1) * xw.ch - \ | ||||||
|  | 						cursorthickness, | ||||||
| 					xw.cw, cursorthickness); | 					xw.cw, cursorthickness); | ||||||
| 			break; | 			break; | ||||||
| 		case 5: /* Blinking bar */ | 		case 5: /* Blinking bar */ | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user