diff --git a/menu/menu_input.c b/menu/menu_input.c index c52a9c6b4a..6ac95bbeb7 100644 --- a/menu/menu_input.c +++ b/menu/menu_input.c @@ -169,8 +169,8 @@ static void menu_input_key_end_line(void) driver_t *driver = driver_get_ptr(); menu_input_ctl(MENU_INPUT_CTL_SET_KEYBOARD_DISPLAY, &keyboard_display); - menu_input_ctl(MENU_INPUT_CTL_SET_KEYBOARD_LABEL, NULL); - menu_input_ctl(MENU_INPUT_CTL_SET_KEYBOARD_LABEL_SETTING, NULL); + menu_input_ctl(MENU_INPUT_CTL_UNSET_KEYBOARD_LABEL, NULL); + menu_input_ctl(MENU_INPUT_CTL_UNSET_KEYBOARD_LABEL_SETTING, NULL); /* Avoid triggering states on pressing return. */ driver->flushing_input = true; @@ -282,6 +282,12 @@ bool menu_input_ctl(enum menu_input_ctl_state state, void *data) menu_input->keyboard.label = ptr; } return true; + case MENU_INPUT_CTL_UNSET_KEYBOARD_LABEL: + { + const char *ptr = (const char*)data; + menu_input->keyboard.label = NULL; + } + return true; case MENU_INPUT_CTL_KEYBOARD_LABEL_SETTING: { const char **ptr = (const char**)data; @@ -294,6 +300,12 @@ bool menu_input_ctl(enum menu_input_ctl_state state, void *data) menu_input->keyboard.label_setting = ptr; } return true; + case MENU_INPUT_CTL_UNSET_KEYBOARD_LABEL_SETTING: + { + const char *ptr = (const char*)data; + menu_input->keyboard.label_setting = NULL; + } + return true; } return false; diff --git a/menu/menu_input.h b/menu/menu_input.h index 0101eb409c..e7dce6185a 100644 --- a/menu/menu_input.h +++ b/menu/menu_input.h @@ -72,8 +72,10 @@ enum menu_input_ctl_state MENU_INPUT_CTL_KEYBOARD_BUFF_PTR, MENU_INPUT_CTL_KEYBOARD_LABEL, MENU_INPUT_CTL_SET_KEYBOARD_LABEL, + MENU_INPUT_CTL_UNSET_KEYBOARD_LABEL, MENU_INPUT_CTL_KEYBOARD_LABEL_SETTING, MENU_INPUT_CTL_SET_KEYBOARD_LABEL_SETTING, + MENU_INPUT_CTL_UNSET_KEYBOARD_LABEL_SETTING, MENU_INPUT_CTL_SEARCH_START };