浏览代码

Queue the calls to GodotLib.key when Android virtual done is pressed

Marcel Admiraal 4 年之前
父节点
当前提交
1856f16378
共有 1 个文件被更改,包括 4 次插入3 次删除
  1. 4 3
      platform/android/java/lib/src/org/godotengine/godot/input/GodotTextInputWrapper.java

+ 4 - 3
platform/android/java/lib/src/org/godotengine/godot/input/GodotTextInputWrapper.java

@@ -144,9 +144,10 @@ public class GodotTextInputWrapper implements TextWatcher, OnEditorActionListene
 
 		if (pActionID == EditorInfo.IME_ACTION_DONE) {
 			// Enter key has been pressed
-			GodotLib.key(KeyEvent.KEYCODE_ENTER, KeyEvent.KEYCODE_ENTER, 0, true);
-			GodotLib.key(KeyEvent.KEYCODE_ENTER, KeyEvent.KEYCODE_ENTER, 0, false);
-
+			mRenderView.queueOnRenderThread(() -> {
+				GodotLib.key(KeyEvent.KEYCODE_ENTER, KeyEvent.KEYCODE_ENTER, 0, true);
+				GodotLib.key(KeyEvent.KEYCODE_ENTER, KeyEvent.KEYCODE_ENTER, 0, false);
+			});
 			mRenderView.getView().requestFocus();
 			return true;
 		}