Android: fix formspec input for AArch64 devices (#9685)

master
Maksim 2020-04-16 19:19:47 +02:00 committed by GitHub
parent 45999b74e6
commit 57038b3cb4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 9 additions and 13 deletions

View File

@ -3346,28 +3346,24 @@ bool GUIFormSpecMenu::getAndroidUIInput()
if (!hasAndroidUIInput())
return false;
// still waiting
if (porting::getInputDialogState() == -1)
return true;
std::string fieldname = m_jni_field_name;
m_jni_field_name.clear();
for (std::vector<FieldSpec>::iterator iter = m_fields.begin();
iter != m_fields.end(); ++iter) {
if (iter->fname != fieldname) {
for (const FieldSpec &field : m_fields) {
if (field.fname != fieldname)
continue;
}
IGUIElement *tochange = getElementFromId(iter->fid, true);
if (tochange == 0) {
return false;
}
IGUIElement *element = getElementFromId(field.fid, true);
if (tochange->getType() != irr::gui::EGUIET_EDIT_BOX) {
if (!element || element->getType() != irr::gui::EGUIET_EDIT_BOX)
return false;
}
std::string text = porting::getInputDialogValue();
((gui::IGUIEditBox *)tochange)->setText(utf8_to_wide(text).c_str());
((gui::IGUIEditBox *)element)->setText(utf8_to_wide(text).c_str());
}
return false;
}