diff --git a/radio/src/thirdparty/libopenui/src/keyboard_text.cpp b/radio/src/thirdparty/libopenui/src/keyboard_text.cpp index 9f827bbbf..19a0ca44b 100644 --- a/radio/src/thirdparty/libopenui/src/keyboard_text.cpp +++ b/radio/src/thirdparty/libopenui/src/keyboard_text.cpp @@ -254,6 +254,7 @@ bool TextKeyboard::onTouchEnd(coord_t x, coord_t y) } else if (*key == KEYBOARD_ENTER[0]) { if (x <= KEYBOARD_ENTER_WIDTH) { + pushEvent(EVT_VIRTUAL_KEY(KEYBOARD_ENTER[0])); // enter hide(); return true; diff --git a/radio/src/thirdparty/libopenui/src/textedit.cpp b/radio/src/thirdparty/libopenui/src/textedit.cpp index b2aa9ef94..c82a56605 100644 --- a/radio/src/thirdparty/libopenui/src/textedit.cpp +++ b/radio/src/thirdparty/libopenui/src/textedit.cpp @@ -108,6 +108,9 @@ void TextEdit::onEvent(event_t event) changed = true; } } + else if (c == (uint8_t)KEYBOARD_ENTER[0]) { + changeEnd(); + } else if (cursorPos < length) { memmove(value + cursorPos + 1, value + cursorPos, length - cursorPos - 1); value[cursorPos++] = c;