summaryrefslogtreecommitdiffstats
path: root/ui/ncurses
diff options
context:
space:
mode:
authorJeremy Kerr <jk@ozlabs.org>2013-10-11 15:16:39 +0800
committerJeremy Kerr <jk@ozlabs.org>2013-10-11 15:16:39 +0800
commitbf8d7e61a8fbc19be5ea1a73b9eaa30e58453d1f (patch)
tree4be76c47ef059485db563f76e0b0c8d31f6e9934 /ui/ncurses
parent03d135e3d7528184062cc16949febd76c393c30d (diff)
downloadtalos-petitboot-bf8d7e61a8fbc19be5ea1a73b9eaa30e58453d1f.tar.gz
talos-petitboot-bf8d7e61a8fbc19be5ea1a73b9eaa30e58453d1f.zip
ui/ncurses: Use 'x' as exit key
Because terminals will send escape-sequences starting with escape, ncurses will pause after receiving a signle escape, to detect these sequences. This introduces a 1-second delay when exiting the petitboot UI. Instead, use 'x'. Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
Diffstat (limited to 'ui/ncurses')
-rw-r--r--ui/ncurses/generic-main.c2
-rw-r--r--ui/ncurses/nc-cui.c2
-rw-r--r--ui/ncurses/nc-menu.c1
-rw-r--r--ui/ncurses/ps3-main.c6
4 files changed, 6 insertions, 5 deletions
diff --git a/ui/ncurses/generic-main.c b/ui/ncurses/generic-main.c
index d9fd7d2..49a96cb 100644
--- a/ui/ncurses/generic-main.c
+++ b/ui/ncurses/generic-main.c
@@ -149,7 +149,7 @@ static struct pmenu *pb_mm_init(struct pb_cui *pb_cui)
"Petitboot (" PACKAGE_VERSION ")");
m->scr.frame.rtitle = NULL;
m->scr.frame.help = talloc_strdup(m,
- "ESC=exit, Enter=accept, e=edit, n=new");
+ "Enter=accept, e=edit, n=new, x=exit");
m->scr.frame.status = talloc_strdup(m, "Welcome to Petitboot");
i = pmenu_item_init(m, 0, "Exit to Shell");
diff --git a/ui/ncurses/nc-cui.c b/ui/ncurses/nc-cui.c
index 33a9f73..da97fd9 100644
--- a/ui/ncurses/nc-cui.c
+++ b/ui/ncurses/nc-cui.c
@@ -65,7 +65,7 @@ void cui_resize(struct cui *cui)
}
/**
- * cui_on_exit - A generic main menu ESC callback.
+ * cui_on_exit - A generic main menu exit callback.
*/
void cui_on_exit(struct pmenu *menu)
diff --git a/ui/ncurses/nc-menu.c b/ui/ncurses/nc-menu.c
index b45719d..beb63f3 100644
--- a/ui/ncurses/nc-menu.c
+++ b/ui/ncurses/nc-menu.c
@@ -205,6 +205,7 @@ static void pmenu_process_key(struct nc_scr *scr, int key)
switch (key) {
case 27: /* ESC */
+ case 'x':
if (menu->on_exit)
menu->on_exit(menu);
nc_flush_keys();
diff --git a/ui/ncurses/ps3-main.c b/ui/ncurses/ps3-main.c
index 9efba3b..c4a3892 100644
--- a/ui/ncurses/ps3-main.c
+++ b/ui/ncurses/ps3-main.c
@@ -343,7 +343,7 @@ static int ps3_svm_to_mm_cb(struct pmenu_item *item)
}
/**
- * ps3_svm_to_mm_helper - The svm ESC callback.
+ * ps3_svm_to_mm_helper - The svm exit callback.
*/
static void ps3_svm_to_mm_helper(struct pmenu *menu)
@@ -421,7 +421,7 @@ static struct pmenu *ps3_mm_init(struct ps3_cui *ps3_cui)
m->scr.frame.title = talloc_strdup(m, "Petitboot PS3");
#endif
m->scr.frame.help = talloc_strdup(m,
- "ESC=exit, Enter=accept, e=edit, o=open");
+ "Enter=accept, e=edit, o=open, x=exit");
m->scr.frame.status = talloc_strdup(m, "Welcome to Petitboot");
i = pmenu_item_init(m, 0, "Boot GameOS");
@@ -472,7 +472,7 @@ static struct pmenu *ps3_svm_init(struct ps3_cui *ps3_cui)
m->hot_key = ps3_hot_key;
m->scr.frame.title = talloc_strdup(m, "Select PS3 Video Mode");
- m->scr.frame.help = talloc_strdup(m, "ESC=exit, Enter=accept");
+ m->scr.frame.help = talloc_strdup(m, "Enter=accept, x=exit");
i = pmenu_item_init(m, 0, "auto detect");
i->on_execute = ps3_svm_cb;
OpenPOWER on IntegriCloud