Maintain local terminal state explicitly
This commit is contained in:
@@ -72,6 +72,8 @@ namespace Network {
|
||||
|
||||
uint64_t get_remote_state_num( void ) { return received_states.back().num; }
|
||||
|
||||
const TimestampedState<RemoteState> & get_latest_remote_state( void ) const { return received_states.back(); }
|
||||
|
||||
int fd( void ) { return connection.fd(); }
|
||||
|
||||
void set_verbose( void ) { sender.set_verbose(); verbose = true; }
|
||||
|
||||
+4
-1
@@ -121,8 +121,11 @@ bool STMClient::process_network_input( void )
|
||||
|
||||
/* is a new frame available from the terminal? */
|
||||
if ( network->get_remote_state_num() != last_remote_num ) {
|
||||
string diff = network->get_remote_diff();
|
||||
string diff = Terminal::Display::new_frame( true,
|
||||
local_terminal->get_fb(),
|
||||
network->get_latest_remote_state().state.get_fb() );
|
||||
swrite( STDOUT_FILENO, diff.data(), diff.size() );
|
||||
*local_terminal = network->get_latest_remote_state().state;
|
||||
}
|
||||
|
||||
return true;
|
||||
|
||||
Reference in New Issue
Block a user