diff options
-rw-r--r-- | input_win.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/input_win.c b/input_win.c index 10fd2f40..96576070 100644 --- a/input_win.c +++ b/input_win.c @@ -176,6 +176,19 @@ static int _handle_edit(const int ch, char *input, int *size) } return 1; + case KEY_DC: // DEL + if (inp_x <= *size) { + wdelch(inp_win); + + // if not last char, shift chars left + if (inp_x < *size) + for (i = inp_x-1; i < *size; i++) + input[i] = input[i+1]; + + (*size)--; + } + return 1; + case KEY_LEFT: if (inp_x > 1) wmove(inp_win, inp_y, inp_x-1); |