Some Linux fixes; some code tidying. Don't redraw status bar so often.

This commit is contained in:
Nicholas Marriott
2008-06-06 17:20:30 +00:00
parent ac332b6e79
commit 6a187bb8d3
9 changed files with 52 additions and 25 deletions

View File

@ -1,4 +1,4 @@
/* $Id: input-keys.c,v 1.6 2008-01-03 21:32:11 nicm Exp $ */
/* $Id: input-keys.c,v 1.7 2008-06-06 17:20:29 nicm Exp $ */
/*
* Copyright (c) 2007 Nicholas Marriott <nicm@users.sourceforge.net>
@ -28,6 +28,8 @@ struct {
int key;
const char *data;
} input_keys[] = {
/* { KEYC_BACKSPACE, "\010" }, */
{ KEYC_DC, "\e[3~" },
{ KEYC_F1, "\eOP" },
{ KEYC_F10, "\e[21~" },
@ -108,12 +110,14 @@ input_key(struct window *w, int key)
#endif
for (i = 0; i < NINPUTKEYS; i++) {
if (input_keys[i].key == key) {
log_debug2(
"found key %d: \"%s\"", key, input_keys[i].data);
buffer_write(w->out,
input_keys[i].data, strlen(input_keys[i].data));
return;
}
if (input_keys[i].key == key)
break;
}
if (i == NINPUTKEYS) {
log_debug2("key %d missing", key);
return;
}
log_debug2("found key %d: \"%s\"", key, input_keys[i].data);
buffer_write(w->out, input_keys[i].data, strlen(input_keys[i].data));
}