diff --git a/scene/gui/line_edit.cpp b/scene/gui/line_edit.cpp index 0ebe6a45a9..0ac43a3901 100644 --- a/scene/gui/line_edit.cpp +++ b/scene/gui/line_edit.cpp @@ -872,13 +872,13 @@ void LineEdit::gui_input(const Ref &p_event) { // Default is ENTER and KP_ENTER. Cannot use ui_accept as default includes SPACE. if (k->is_action_pressed("ui_text_submit")) { emit_signal(SceneStringName(text_submitted), text); - if (DisplayServer::get_singleton()->has_feature(DisplayServer::FEATURE_VIRTUAL_KEYBOARD) && virtual_keyboard_enabled) { - DisplayServer::get_singleton()->virtual_keyboard_hide(); - } if (editing && !keep_editing_on_text_submit) { unedit(); emit_signal(SNAME("editing_toggled"), false); + if (DisplayServer::get_singleton()->has_feature(DisplayServer::FEATURE_VIRTUAL_KEYBOARD) && virtual_keyboard_enabled) { + DisplayServer::get_singleton()->virtual_keyboard_hide(); + } } accept_event();