summaryrefslogtreecommitdiffstats
path: root/src/hci/tui/login_ui.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/hci/tui/login_ui.c')
-rw-r--r--src/hci/tui/login_ui.c22
1 files changed, 15 insertions, 7 deletions
diff --git a/src/hci/tui/login_ui.c b/src/hci/tui/login_ui.c
index 3c55325d..56fc2fa9 100644
--- a/src/hci/tui/login_ui.c
+++ b/src/hci/tui/login_ui.c
@@ -48,12 +48,12 @@ FILE_LICENCE ( GPL2_OR_LATER_OR_UBDL );
#define EDITBOX_COL ( ( COLS / 2U ) - 10U )
#define EDITBOX_WIDTH 20U
-int login_ui ( void ) {
+int login_ui ( int nouser ) {
char username[64];
char password[64];
struct edit_box username_box;
struct edit_box password_box;
- struct edit_box *current_box = &username_box;
+ struct edit_box *current_box = nouser ? &password_box : &username_box;
int key;
int rc = -EINPROGRESS;
@@ -76,11 +76,15 @@ int login_ui ( void ) {
color_set ( CPAIR_NORMAL, NULL );
erase();
attron ( A_BOLD );
- mvprintw ( USERNAME_LABEL_ROW, LABEL_COL, "Username:" );
+ if ( ! nouser ) {
+ mvprintw ( USERNAME_LABEL_ROW, LABEL_COL, "Username:" );
+ }
mvprintw ( PASSWORD_LABEL_ROW, LABEL_COL, "Password:" );
attroff ( A_BOLD );
color_set ( CPAIR_EDIT, NULL );
- draw_editbox ( &username_box );
+ if ( ! nouser ) {
+ draw_editbox ( &username_box );
+ }
draw_editbox ( &password_box );
/* Main loop */
@@ -94,11 +98,15 @@ int login_ui ( void ) {
current_box = &password_box;
break;
case KEY_UP:
- current_box = &username_box;
+ if ( ! nouser ) {
+ current_box = &username_box;
+ }
break;
case TAB:
- current_box = ( ( current_box == &username_box ) ?
- &password_box : &username_box );
+ if ( ! nouser ) {
+ current_box = ( ( current_box == &username_box ) ?
+ &password_box : &username_box );
+ }
break;
case KEY_ENTER:
if ( current_box == &username_box ) {