Skip to content
Snippets Groups Projects
Commit 4330c63e authored by rubenwardy's avatar rubenwardy
Browse files

Submit name of field on enter key press

parent fb20b451
No related branches found
No related tags found
No related merge requests found
......@@ -104,6 +104,7 @@ GUIFormSpecMenu::GUIFormSpecMenu(irr::IrrlichtDevice* dev,
m_formspec_version(0),
m_focused_element(""),
m_joystick(joystick),
current_field_enter_pending(""),
m_font(NULL),
m_remap_dbl_click(remap_dbl_click)
#ifdef __ANDROID__
......@@ -2695,6 +2696,10 @@ void GUIFormSpecMenu::acceptInput(FormspecQuitMode quitmode=quit_mode_no)
current_keys_pending.key_enter = false;
}
if (!current_field_enter_pending.empty()) {
fields["key_enter_field"] = current_field_enter_pending;
}
if (current_keys_pending.key_escape) {
fields["key_escape"] = "true";
current_keys_pending.key_escape = false;
......@@ -3625,8 +3630,16 @@ bool GUIFormSpecMenu::OnEvent(const SEvent& event)
if (event.GUIEvent.EventType == gui::EGET_EDITBOX_ENTER) {
if (event.GUIEvent.Caller->getID() > 257) {
for (u32 i = 0; i < m_fields.size(); i++) {
FieldSpec &s = m_fields[i];
if (s.ftype == f_Unknown &&
s.fid == event.GUIEvent.Caller->getID()) {
current_field_enter_pending = s.fname;
}
}
if (m_allowclose) {
current_keys_pending.key_enter = true;
acceptInput(quit_mode_accept);
quitMenu();
} else {
......
......@@ -463,6 +463,7 @@ class GUIFormSpecMenu : public GUIModalMenu
} fs_key_pendig;
fs_key_pendig current_keys_pending;
std::string current_field_enter_pending;
void parseElement(parserData* data,std::string element);
......@@ -557,4 +558,3 @@ class FormspecFormSource: public IFormSource
};
#endif
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment