summaryrefslogtreecommitdiff
path: root/src/client
diff options
context:
space:
mode:
Diffstat (limited to 'src/client')
-rw-r--r--src/client/cl_keys.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/client/cl_keys.c b/src/client/cl_keys.c
index 0fbddd23..191d7fe4 100644
--- a/src/client/cl_keys.c
+++ b/src/client/cl_keys.c
@@ -438,11 +438,19 @@ void Field_KeyDownEvent( field_t *edit, int key ) {
switch ( key ) {
case K_DEL:
if ( edit->cursor < len ) {
- memmove( edit->buffer + edit->cursor,
+ memmove( edit->buffer + edit->cursor,
edit->buffer + edit->cursor + 1, len - edit->cursor );
}
break;
+ case K_BACKSPACE:
+ if ( edit->cursor > 0 ) {
+ memmove( edit->buffer + edit->cursor - 1,
+ edit->buffer + edit->cursor, len + 1 - edit->cursor );
+ edit->cursor--;
+ }
+ break;
+
case K_RIGHTARROW:
if ( edit->cursor < len ) {
edit->cursor++;