Diff between 3c10d4e0152775b4a07cb7ef226a2eab31ac8546 and 5b5f62794e5490f6f168d326244d22f6585c6280

Changed Files

File Additions Deletions Status
android/client/terminal.c +13 -0 modified

Full Patch

diff --git a/android/client/terminal.c b/android/client/terminal.c
index 88c963b..e721160 100644
--- a/android/client/terminal.c
+++ b/android/client/terminal.c
@@ -94,6 +94,7 @@ static const struct ansii_sequence ansii_sequnces[] = {
 #define KEY_SEQUNCE_NOT_FINISHED -1
 #define KEY_C_C 3
 #define KEY_C_D 4
+#define KEY_C_L 12
 
 #define isseqence(c) ((c) == 0x1B)
 
@@ -237,6 +238,15 @@ static void terminal_clear_line(void)
 	terminal_line_replaced();
 }
 
+static void terminal_clear_sceen(void)
+{
+	line_buf[0] = '\0';
+	line_buf_ix = 0;
+	line_len = 0;
+
+	printf("\x1b[2J\x1b[1;1H%s", prompt);
+}
+
 static void terminal_delete_char(void)
 {
 	/* delete character under cursor if not at the very end */
@@ -525,6 +535,9 @@ void terminal_process_char(int c, void (*process_line)(char *line))
 			exit(0);
 		}
 		break;
+	case KEY_C_L:
+		terminal_clear_sceen();
+		break;
 	default:
 		if (!isprint(c)) {
 			/*