[PATCH] ui/ncurses: Treat left/right arrow keys properly
Samuel Mendoza-Jonas
sam at mendozajonas.com
Fri Aug 19 15:25:16 AEST 2016
It turns out ncurses helpfully provides REQ_LEFT_FIELD and
REQ_RIGHT_FIELD to navigate between visually horizontal fields. Update
widgetset_process_key() to use these for KEY_LEFT and KEY_RIGHT
respectively.
Signed-off-by: Samuel Mendoza-Jonas <sam at mendozajonas.com>
---
ui/ncurses/nc-widgets.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/ui/ncurses/nc-widgets.c b/ui/ncurses/nc-widgets.c
index 7dc2df3..15cec80 100644
--- a/ui/ncurses/nc-widgets.c
+++ b/ui/ncurses/nc-widgets.c
@@ -1132,14 +1132,12 @@ bool widgetset_process_key(struct nc_widgetset *set, int key)
tab = true;
/* fall through */
case KEY_UP:
- case KEY_LEFT:
req = REQ_SPREV_FIELD;
break;
case '\t':
tab = true;
/* fall through */
case KEY_DOWN:
- case KEY_RIGHT:
req = REQ_SNEXT_FIELD;
break;
case KEY_PPAGE:
@@ -1148,6 +1146,12 @@ bool widgetset_process_key(struct nc_widgetset *set, int key)
case KEY_NPAGE:
req = REQ_SLAST_FIELD;
break;
+ case KEY_LEFT:
+ req = REQ_LEFT_FIELD;
+ break;
+ case KEY_RIGHT:
+ req = REQ_RIGHT_FIELD;
+ break;
}
if (req) {
--
2.9.3
More information about the Petitboot
mailing list