app/internal/window: [android] move switching to main thread to Go

There's runOnMain alread; use that for show|hideTextInput instead
of an ad-hoc switch.

Signed-off-by: Elias Naur <mail@eliasnaur.com>
This commit is contained in:
Elias Naur
2021-01-10 13:14:43 +01:00
parent f311a54ffb
commit acef4e6e2d
2 changed files with 7 additions and 15 deletions
+3 -11
View File
@@ -174,20 +174,12 @@ public final class GioView extends SurfaceView implements Choreographer.FrameCal
}
void showTextInput() {
post(new Runnable() {
@Override public void run() {
GioView.this.requestFocus();
imm.showSoftInput(GioView.this, 0);
}
});
GioView.this.requestFocus();
imm.showSoftInput(GioView.this, 0);
}
void hideTextInput() {
post(new Runnable() {
@Override public void run() {
imm.hideSoftInputFromWindow(getWindowToken(), 0);
}
});
imm.hideSoftInputFromWindow(getWindowToken(), 0);
}
@Override protected boolean fitSystemWindows(Rect insets) {
+4 -4
View File
@@ -537,10 +537,10 @@ func Java_org_gioui_GioView_onTouchEvent(env *C.JNIEnv, class C.jclass, handle C
}
func (w *window) ShowTextInput(show bool) {
if w.view == 0 {
return
}
runInJVM(javaVM(), func(env *C.JNIEnv) {
runOnMain(func(env *C.JNIEnv) {
if w.view == 0 {
return
}
if show {
callVoidMethod(env, w.view, gioView.showTextInput)
} else {