diff --git a/term_util.c b/term_util.c index 6947ba2..35851ce 100644 --- a/term_util.c +++ b/term_util.c @@ -416,7 +416,6 @@ bool qform_drive(Qform* qf, int key, Qform_action* out_action) { case CTRL_PLUS('h'): form_driver(qf->ncurses_form, REQ_DEL_PREV); return false; - case ' ': case '\r': case KEY_ENTER: { out_action->any.type = Qform_action_type_submitted; diff --git a/tui_main.c b/tui_main.c index ec6a1fd..539a8ae 100644 --- a/tui_main.c +++ b/tui_main.c @@ -1985,10 +1985,15 @@ int main(int argc, char** argv) { case Qform_action_type_submitted: { switch (qform_id(qf)) { case Save_as_form_id: { - if (qform_get_text_line(qf, Save_as_name_id, &file_name)) { - fprintf(stderr, "new file name: %s\n", file_name.str); - ged_state.filename = file_name.str; + Heapstr temp_name; + heapstr_init(&temp_name); + if (qform_get_text_line(qf, Save_as_name_id, &temp_name) && + heapstr_len(&temp_name) > 0) { + qnav_stack_pop(); + fprintf(stderr, "new file name: %s\n", temp_name.str); + // ged_state.filename = file_name.str; } + heapstr_deinit(&temp_name); } break; } } break;