Compare commits
	
		
			No commits in common. "430968e5d5fdf627ce7e1563bbee22bf2f9256b2" and "ee76186bef6f40da41f8cfa89a9c54ae9c9540f4" have entirely different histories.
		
	
	
		
			430968e5d5
			...
			ee76186bef
		
	
		
							
								
								
									
										14
									
								
								xC-proto
									
									
									
									
									
								
							
							
						
						
									
										14
									
								
								xC-proto
									
									
									
									
									
								
							| @ -9,28 +9,24 @@ struct CommandMessage { | |||||||
| 	union CommandData switch (enum Command { | 	union CommandData switch (enum Command { | ||||||
| 		HELLO, | 		HELLO, | ||||||
| 		ACTIVE, | 		ACTIVE, | ||||||
| 		BUFFER_ACTIVATE, |  | ||||||
| 		BUFFER_INPUT, | 		BUFFER_INPUT, | ||||||
| 		BUFFER_TOGGLE_UNIMPORTANT, | 		BUFFER_ACTIVATE, | ||||||
| 		PING_RESPONSE, | 		PING_RESPONSE, | ||||||
| 		PING, | 		PING, | ||||||
| 		BUFFER_COMPLETE, | 		BUFFER_COMPLETE, | ||||||
| 		BUFFER_LOG, | 		BUFFER_LOG, | ||||||
| 	} command) { | 	} command) { | ||||||
| 	// If the version check succeeds, the client will receive |  | ||||||
| 	// an initial stream of SERVER_UPDATE, BUFFER_UPDATE, BUFFER_STATS, |  | ||||||
| 	// BUFFER_LINE, and finally a BUFFER_ACTIVATE message. |  | ||||||
| 	case HELLO: | 	case HELLO: | ||||||
| 		u32 version; | 		u32 version; | ||||||
|  | 		// If the version check succeeds, the client will receive | ||||||
|  | 		// an initial stream of SERVER_UPDATE, BUFFER_UPDATE, BUFFER_STATS, | ||||||
|  | 		// BUFFER_LINE, and finally a BUFFER_ACTIVATE message. | ||||||
| 	case ACTIVE: | 	case ACTIVE: | ||||||
| 		void; | 		void; | ||||||
| 	case BUFFER_ACTIVATE: |  | ||||||
| 		string buffer_name; |  | ||||||
| 	case BUFFER_INPUT: | 	case BUFFER_INPUT: | ||||||
| 		string buffer_name; | 		string buffer_name; | ||||||
| 		string text; | 		string text; | ||||||
| 	// XXX: Perhaps this should rather be handled through a /buffer command. | 	case BUFFER_ACTIVATE: | ||||||
| 	case BUFFER_TOGGLE_UNIMPORTANT: |  | ||||||
| 		string buffer_name; | 		string buffer_name; | ||||||
| 	case PING_RESPONSE: | 	case PING_RESPONSE: | ||||||
| 		u32 event_seq; | 		u32 event_seq; | ||||||
|  | |||||||
							
								
								
									
										32
									
								
								xC.c
									
									
									
									
									
								
							
							
						
						
									
										32
									
								
								xC.c
									
									
									
									
									
								
							| @ -5235,18 +5235,6 @@ buffer_clear (struct app_context *ctx, struct buffer *buffer) | |||||||
| 	buffer->lines_count = 0; | 	buffer->lines_count = 0; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| static void |  | ||||||
| buffer_toggle_unimportant (struct app_context *ctx, struct buffer *buffer) |  | ||||||
| { |  | ||||||
| 	buffer->hide_unimportant ^= true; |  | ||||||
| 
 |  | ||||||
| 	relay_prepare_buffer_update (ctx, buffer); |  | ||||||
| 	relay_broadcast (ctx); |  | ||||||
| 
 |  | ||||||
| 	if (buffer == ctx->current_buffer) |  | ||||||
| 		buffer_print_backlog (ctx, buffer); |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| static struct buffer * | static struct buffer * | ||||||
| buffer_at_index (struct app_context *ctx, int n) | buffer_at_index (struct app_context *ctx, int n) | ||||||
| { | { | ||||||
| @ -14384,7 +14372,12 @@ on_toggle_unimportant (int count, int key, void *user_data) | |||||||
| 	(void) count; | 	(void) count; | ||||||
| 	(void) key; | 	(void) key; | ||||||
| 	struct app_context *ctx = user_data; | 	struct app_context *ctx = user_data; | ||||||
| 	buffer_toggle_unimportant (ctx, ctx->current_buffer); | 	ctx->current_buffer->hide_unimportant ^= true; | ||||||
|  | 
 | ||||||
|  | 	relay_prepare_buffer_update (ctx, ctx->current_buffer); | ||||||
|  | 	relay_broadcast (ctx); | ||||||
|  | 
 | ||||||
|  | 	buffer_print_backlog (ctx, ctx->current_buffer); | ||||||
| 	return true; | 	return true; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| @ -15451,12 +15444,10 @@ client_message_buffer_name (const struct relay_command_message *m) | |||||||
| 	{ | 	{ | ||||||
| 	case RELAY_COMMAND_BUFFER_COMPLETE: | 	case RELAY_COMMAND_BUFFER_COMPLETE: | ||||||
| 		return m->data.buffer_input.buffer_name.str; | 		return m->data.buffer_input.buffer_name.str; | ||||||
| 	case RELAY_COMMAND_BUFFER_ACTIVATE: |  | ||||||
| 		return m->data.buffer_activate.buffer_name.str; |  | ||||||
| 	case RELAY_COMMAND_BUFFER_INPUT: | 	case RELAY_COMMAND_BUFFER_INPUT: | ||||||
| 		return m->data.buffer_input.buffer_name.str; | 		return m->data.buffer_input.buffer_name.str; | ||||||
| 	case RELAY_COMMAND_BUFFER_TOGGLE_UNIMPORTANT: | 	case RELAY_COMMAND_BUFFER_ACTIVATE: | ||||||
| 		return m->data.buffer_toggle_unimportant.buffer_name.str; | 		return m->data.buffer_activate.buffer_name.str; | ||||||
| 	case RELAY_COMMAND_BUFFER_LOG: | 	case RELAY_COMMAND_BUFFER_LOG: | ||||||
| 		return m->data.buffer_log.buffer_name.str; | 		return m->data.buffer_log.buffer_name.str; | ||||||
| 	default: | 	default: | ||||||
| @ -15582,14 +15573,11 @@ client_process_message (struct client *c, | |||||||
| 		client_process_buffer_complete (c, m->command_seq, buffer, | 		client_process_buffer_complete (c, m->command_seq, buffer, | ||||||
| 			&m->data.buffer_complete); | 			&m->data.buffer_complete); | ||||||
| 		break; | 		break; | ||||||
| 	case RELAY_COMMAND_BUFFER_ACTIVATE: |  | ||||||
| 		buffer_activate (c->ctx, buffer); |  | ||||||
| 		break; |  | ||||||
| 	case RELAY_COMMAND_BUFFER_INPUT: | 	case RELAY_COMMAND_BUFFER_INPUT: | ||||||
| 		process_input (c->ctx, buffer, m->data.buffer_input.text.str); | 		process_input (c->ctx, buffer, m->data.buffer_input.text.str); | ||||||
| 		break; | 		break; | ||||||
| 	case RELAY_COMMAND_BUFFER_TOGGLE_UNIMPORTANT: | 	case RELAY_COMMAND_BUFFER_ACTIVATE: | ||||||
| 		buffer_toggle_unimportant (c->ctx, buffer); | 		buffer_activate (c->ctx, buffer); | ||||||
| 		break; | 		break; | ||||||
| 	case RELAY_COMMAND_BUFFER_LOG: | 	case RELAY_COMMAND_BUFFER_LOG: | ||||||
| 		client_process_buffer_log (c, m->command_seq, buffer); | 		client_process_buffer_log (c, m->command_seq, buffer); | ||||||
|  | |||||||
| @ -13,16 +13,6 @@ body { | |||||||
| 	height: 100dvh; | 	height: 100dvh; | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| .overlay { |  | ||||||
| 	padding: .6em .9em; |  | ||||||
| 	background: #eee; |  | ||||||
| 	border: 1px outset #eee; |  | ||||||
| 	position: absolute; |  | ||||||
| 	left: 50%; |  | ||||||
| 	top: 50%; |  | ||||||
| 	transform: translate(-50%, -50%); |  | ||||||
| 	text-align: center; |  | ||||||
| } |  | ||||||
| .title, .status { | .title, .status { | ||||||
| 	padding: .05em .3em; | 	padding: .05em .3em; | ||||||
| 	background: #eee; | 	background: #eee; | ||||||
|  | |||||||
| @ -41,7 +41,7 @@ class RelayRpc extends EventTarget { | |||||||
| 		} | 		} | ||||||
| 		this.ws.onclose = event => { | 		this.ws.onclose = event => { | ||||||
| 			let message = "Connection closed: " + | 			let message = "Connection closed: " + | ||||||
| 				event.reason + " (" + event.code + ")" | 				event.code + " (" + event.reason + ")" | ||||||
| 			for (const seq in this.promised) | 			for (const seq in this.promised) | ||||||
| 				this.promised[seq].reject(message) | 				this.promised[seq].reject(message) | ||||||
| 
 | 
 | ||||||
| @ -194,10 +194,6 @@ function bufferActivate(name) { | |||||||
| 	rpc.send({command: 'BufferActivate', bufferName: name}) | 	rpc.send({command: 'BufferActivate', bufferName: name}) | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| function bufferToggleUnimportant(name) { |  | ||||||
| 	rpc.send({command: 'BufferToggleUnimportant', bufferName: name}) |  | ||||||
| } |  | ||||||
| 
 |  | ||||||
| function bufferToggleLog() { | function bufferToggleLog() { | ||||||
| 	if (bufferLog) { | 	if (bufferLog) { | ||||||
| 		setTimeout(() => | 		setTimeout(() => | ||||||
| @ -811,18 +807,14 @@ let Input = { | |||||||
| 
 | 
 | ||||||
| let Main = { | let Main = { | ||||||
| 	view: vnode => { | 	view: vnode => { | ||||||
| 		let overlay = undefined | 		let state = "Connected" | ||||||
| 		if (connecting) | 		if (connecting) | ||||||
| 			overlay = m('.overlay', {}, "Connecting...") | 			state = "Connecting..." | ||||||
| 		else if (rpc.ws === undefined) | 		else if (rpc.ws === undefined) | ||||||
| 			overlay = m('.overlay', {}, [ | 			state = "Disconnected" | ||||||
| 				m('', {}, "Disconnected"), |  | ||||||
| 				m('', {}, m('small', {}, "Reload page to reconnect.")), |  | ||||||
| 			]) |  | ||||||
| 
 | 
 | ||||||
| 		return m('.xP', {}, [ | 		return m('.xP', {}, [ | ||||||
| 			overlay, | 			m('.title', {}, [`xP (${state})`, m(Toolbar)]), | ||||||
| 			m('.title', {}, [`xP`, m(Toolbar)]), |  | ||||||
| 			m('.middle', {}, [m(BufferList), m(BufferContainer)]), | 			m('.middle', {}, [m(BufferList), m(BufferContainer)]), | ||||||
| 			m(Status), | 			m(Status), | ||||||
| 			m(Input), | 			m(Input), | ||||||
| @ -868,10 +860,6 @@ document.addEventListener('keydown', event => { | |||||||
| 	case 'h': | 	case 'h': | ||||||
| 		bufferToggleLog() | 		bufferToggleLog() | ||||||
| 		break | 		break | ||||||
| 	case 'H': |  | ||||||
| 		if (bufferCurrent !== undefined) |  | ||||||
| 			bufferToggleUnimportant(bufferCurrent) |  | ||||||
| 		break |  | ||||||
| 	case 'a': | 	case 'a': | ||||||
| 		for (const name of names.slice(1)) | 		for (const name of names.slice(1)) | ||||||
| 			if (buffers.get(name).newMessages) { | 			if (buffers.get(name).newMessages) { | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user