diff --git a/radio/src/gui/colorlcd/libui/textedit.cpp b/radio/src/gui/colorlcd/libui/textedit.cpp index 6c1f6b613..d81a79f23 100644 --- a/radio/src/gui/colorlcd/libui/textedit.cpp +++ b/radio/src/gui/colorlcd/libui/textedit.cpp @@ -38,6 +38,15 @@ class TextArea : public FormField lv_textarea_set_max_length(lvobj, length); lv_textarea_set_placeholder_text(lvobj, "---"); + setFocusHandler([=](bool focus) { + if (!focus && editMode) { + setEditMode(false); + hide(); + lv_group_focus_obj(parent->getLvObj()); + lv_obj_clear_state(parent->getLvObj(), LV_STATE_FOCUSED); + } + }); + update(); }