mirror of
				https://github.com/tmux/tmux.git
				synced 2025-11-04 09:26:05 +00:00 
			
		
		
		
	Improve logging of screen mode changes.
This commit is contained in:
		
							
								
								
									
										52
									
								
								screen.c
									
									
									
									
									
								
							
							
						
						
									
										52
									
								
								screen.c
									
									
									
									
									
								
							@@ -156,8 +156,8 @@ screen_reset_tabs(struct screen *s)
 | 
			
		||||
void
 | 
			
		||||
screen_set_cursor_style(struct screen *s, u_int style)
 | 
			
		||||
{
 | 
			
		||||
	switch (style)
 | 
			
		||||
	{
 | 
			
		||||
	log_debug("%s: new %u, was %u", __func__, style, s->cstyle);
 | 
			
		||||
	switch (style) {
 | 
			
		||||
	case 0:
 | 
			
		||||
		s->cstyle = SCREEN_CURSOR_DEFAULT;
 | 
			
		||||
		break;
 | 
			
		||||
@@ -653,3 +653,51 @@ screen_alternate_off(struct screen *s, struct grid_cell *gc, int cursor)
 | 
			
		||||
	if (s->cy > screen_size_y(s) - 1)
 | 
			
		||||
		s->cy = screen_size_y(s) - 1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/* Get mode as a string. */
 | 
			
		||||
const char *
 | 
			
		||||
screen_mode_to_string(int mode)
 | 
			
		||||
{
 | 
			
		||||
	static char	tmp[1024];
 | 
			
		||||
 | 
			
		||||
	if (mode == 0)
 | 
			
		||||
		return "NONE";
 | 
			
		||||
	if (mode == ALL_MODES)
 | 
			
		||||
		return "ALL";
 | 
			
		||||
 | 
			
		||||
	*tmp = '\0';
 | 
			
		||||
	if (mode & MODE_CURSOR)
 | 
			
		||||
		strlcat(tmp, "CURSOR,", sizeof tmp);
 | 
			
		||||
	if (mode & MODE_INSERT)
 | 
			
		||||
		strlcat(tmp, "INSERT,", sizeof tmp);
 | 
			
		||||
	if (mode & MODE_KCURSOR)
 | 
			
		||||
		strlcat(tmp, "KCURSOR,", sizeof tmp);
 | 
			
		||||
	if (mode & MODE_KKEYPAD)
 | 
			
		||||
		strlcat(tmp, "KKEYPAD,", sizeof tmp);
 | 
			
		||||
	if (mode & MODE_WRAP)
 | 
			
		||||
		strlcat(tmp, "WRAP,", sizeof tmp);
 | 
			
		||||
	if (mode & MODE_MOUSE_STANDARD)
 | 
			
		||||
		strlcat(tmp, "STANDARD,", sizeof tmp);
 | 
			
		||||
	if (mode & MODE_MOUSE_BUTTON)
 | 
			
		||||
		strlcat(tmp, "BUTTON,", sizeof tmp);
 | 
			
		||||
	if (mode & MODE_BLINKING)
 | 
			
		||||
		strlcat(tmp, "BLINKING,", sizeof tmp);
 | 
			
		||||
	if (mode & MODE_MOUSE_UTF8)
 | 
			
		||||
		strlcat(tmp, "UTF8,", sizeof tmp);
 | 
			
		||||
	if (mode & MODE_MOUSE_SGR)
 | 
			
		||||
		strlcat(tmp, "SGR,", sizeof tmp);
 | 
			
		||||
	if (mode & MODE_BRACKETPASTE)
 | 
			
		||||
		strlcat(tmp, "BRACKETPASTE,", sizeof tmp);
 | 
			
		||||
	if (mode & MODE_FOCUSON)
 | 
			
		||||
		strlcat(tmp, "FOCUSON,", sizeof tmp);
 | 
			
		||||
	if (mode & MODE_MOUSE_ALL)
 | 
			
		||||
		strlcat(tmp, "ALL,", sizeof tmp);
 | 
			
		||||
	if (mode & MODE_ORIGIN)
 | 
			
		||||
		strlcat(tmp, "ORIGIN,", sizeof tmp);
 | 
			
		||||
	if (mode & MODE_CRLF)
 | 
			
		||||
		strlcat(tmp, "CRLF,", sizeof tmp);
 | 
			
		||||
	if (mode & MODE_KEXTENDED)
 | 
			
		||||
		strlcat(tmp, "KEXTENDED,", sizeof tmp);
 | 
			
		||||
	tmp[strlen (tmp) - 1] = '\0';
 | 
			
		||||
	return (tmp);
 | 
			
		||||
}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user