mirror of
				https://github.com/tmux/tmux.git
				synced 2025-10-26 12:27:15 +00:00 
			
		
		
		
	Use 8 for underscore colour defaults instead of 0 which is less
confusing, and fix writing tge default colour. GitHub issue 3627.
This commit is contained in:
		
							
								
								
									
										10
									
								
								grid.c
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								grid.c
									
									
									
									
									
								
							| @@ -37,7 +37,7 @@ | ||||
|  | ||||
| /* Default grid cell data. */ | ||||
| const struct grid_cell grid_default_cell = { | ||||
| 	{ { ' ' }, 0, 1, 1 }, 0, 0, 8, 8, 0, 0 | ||||
| 	{ { ' ' }, 0, 1, 1 }, 0, 0, 8, 8, 8, 0 | ||||
| }; | ||||
|  | ||||
| /* | ||||
| @@ -45,12 +45,12 @@ const struct grid_cell grid_default_cell = { | ||||
|  * appears in the grid - because of this, they are always extended cells. | ||||
|  */ | ||||
| static const struct grid_cell grid_padding_cell = { | ||||
| 	{ { '!' }, 0, 0, 0 }, 0, GRID_FLAG_PADDING, 8, 8, 0, 0 | ||||
| 	{ { '!' }, 0, 0, 0 }, 0, GRID_FLAG_PADDING, 8, 8, 8, 0 | ||||
| }; | ||||
|  | ||||
| /* Cleared grid cell data. */ | ||||
| static const struct grid_cell grid_cleared_cell = { | ||||
| 	{ { ' ' }, 0, 1, 1 }, 0, GRID_FLAG_CLEARED, 8, 8, 0, 0 | ||||
| 	{ { ' ' }, 0, 1, 1 }, 0, GRID_FLAG_CLEARED, 8, 8, 8, 0 | ||||
| }; | ||||
| static const struct grid_cell_entry grid_cleared_entry = { | ||||
| 	{ .data = { 0, 8, 8, ' ' } }, GRID_FLAG_CLEARED | ||||
| @@ -528,7 +528,7 @@ grid_get_cell1(struct grid_line *gl, u_int px, struct grid_cell *gc) | ||||
| 	gc->bg = gce->data.bg; | ||||
| 	if (gce->flags & GRID_FLAG_BG256) | ||||
| 		gc->bg |= COLOUR_FLAG_256; | ||||
| 	gc->us = 0; | ||||
| 	gc->us = 8; | ||||
| 	utf8_set(&gc->data, gce->data.data); | ||||
| 	gc->link = 0; | ||||
| } | ||||
| @@ -956,7 +956,7 @@ grid_string_cells_code(const struct grid_cell *lastgc, | ||||
| 	for (i = 0; i < nitems(attrs); i++) { | ||||
| 		if (((~attr & attrs[i].mask) && | ||||
| 		    (lastattr & attrs[i].mask)) || | ||||
| 		    (lastgc->us != 0 && gc->us == 0)) { | ||||
| 		    (lastgc->us != 8 && gc->us == 8)) { | ||||
| 			s[n++] = 0; | ||||
| 			lastattr &= GRID_ATTR_CHARSET; | ||||
| 			break; | ||||
|   | ||||
							
								
								
									
										2
									
								
								input.c
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								input.c
									
									
									
									
									
								
							| @@ -2186,7 +2186,7 @@ input_csi_dispatch_sgr(struct input_ctx *ictx) | ||||
| 			gc->attr &= ~GRID_ATTR_OVERLINE; | ||||
| 			break; | ||||
| 		case 59: | ||||
| 			gc->us = 0; | ||||
| 			gc->us = 8; | ||||
| 			break; | ||||
| 		case 90: | ||||
| 		case 91: | ||||
|   | ||||
							
								
								
									
										7
									
								
								tty.c
									
									
									
									
									
								
							
							
						
						
									
										7
									
								
								tty.c
									
									
									
									
									
								
							| @@ -2815,9 +2815,10 @@ tty_check_us(__unused struct tty *tty, struct colour_palette *palette, | ||||
| 	} | ||||
|  | ||||
| 	/* Underscore colour is set as RGB so convert. */ | ||||
| 	gc->us = colour_force_rgb (gc->us); | ||||
| 	if (gc->us == -1) | ||||
| 	if ((c = colour_force_rgb (gc->us)) == -1) | ||||
| 		gc->us = 8; | ||||
| 	else | ||||
| 		gc->us = c; | ||||
| } | ||||
|  | ||||
| static void | ||||
| @@ -2892,7 +2893,7 @@ tty_colours_us(struct tty *tty, const struct grid_cell *gc) | ||||
| 	u_char			 r, g, b; | ||||
|  | ||||
| 	/* Clear underline colour. */ | ||||
| 	if (gc->us == 0) { | ||||
| 	if (COLOUR_DEFAULT(gc->us)) { | ||||
| 		tty_putcode(tty, TTYC_OL); | ||||
| 		goto save; | ||||
| 	} | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 nicm
					nicm