mirror of
				https://github.com/tmux/tmux.git
				synced 2025-11-03 16:46:18 +00:00 
			
		
		
		
	Make two -E only close popup automatically if the command exited with 0.
This commit is contained in:
		
							
								
								
									
										5
									
								
								popup.c
									
									
									
									
									
								
							
							
						
						
									
										5
									
								
								popup.c
									
									
									
									
									
								
							@@ -260,7 +260,8 @@ popup_key_cb(struct client *c, struct key_event *event)
 | 
			
		||||
	if (pd->ictx != NULL && (pd->flags & POPUP_WRITEKEYS)) {
 | 
			
		||||
		if (KEYC_IS_MOUSE(event->key))
 | 
			
		||||
			return (0);
 | 
			
		||||
		if ((~pd->flags & POPUP_CLOSEEXIT) &&
 | 
			
		||||
		if (((pd->flags & (POPUP_CLOSEEXIT|POPUP_CLOSEEXITZERO)) == 0 ||
 | 
			
		||||
		    pd->job == NULL) &&
 | 
			
		||||
		    (event->key == '\033' || event->key == '\003'))
 | 
			
		||||
			return (1);
 | 
			
		||||
		if (pd->job == NULL)
 | 
			
		||||
@@ -347,6 +348,8 @@ popup_job_complete_cb(struct job *job)
 | 
			
		||||
 | 
			
		||||
	if (pd->flags & POPUP_CLOSEEXIT)
 | 
			
		||||
		server_client_clear_overlay(pd->c);
 | 
			
		||||
	if ((pd->flags & POPUP_CLOSEEXITZERO) && pd->status == 0)
 | 
			
		||||
		server_client_clear_overlay(pd->c);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
u_int
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										5
									
								
								tmux.1
									
									
									
									
									
								
							
							
						
						
									
										5
									
								
								tmux.1
									
									
									
									
									
								
							@@ -5032,6 +5032,11 @@ shell command.
 | 
			
		||||
closes the popup automatically when
 | 
			
		||||
.Ar shell-command
 | 
			
		||||
exits.
 | 
			
		||||
Two
 | 
			
		||||
.Fl E
 | 
			
		||||
closes the popup only if
 | 
			
		||||
.Ar shell-command
 | 
			
		||||
exited with success.
 | 
			
		||||
With
 | 
			
		||||
.Fl K ,
 | 
			
		||||
.Ql Escape
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										1
									
								
								tmux.h
									
									
									
									
									
								
							
							
						
						
									
										1
									
								
								tmux.h
									
									
									
									
									
								
							@@ -2761,6 +2761,7 @@ int		 menu_display(struct menu *, int, struct cmdq_item *, u_int,
 | 
			
		||||
/* popup.c */
 | 
			
		||||
#define POPUP_WRITEKEYS 0x1
 | 
			
		||||
#define POPUP_CLOSEEXIT 0x2
 | 
			
		||||
#define POPUP_CLOSEEXITZERO 0x4
 | 
			
		||||
u_int		 popup_width(struct cmdq_item *, u_int, const char **,
 | 
			
		||||
		    struct client *, struct cmd_find_state *);
 | 
			
		||||
u_int		 popup_height(u_int, const char **);
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user