app/internal/wm: refactor Samsung keyboard fix

Move the code from Java to Go.

Signed-off-by: Inkeliz <inkeliz@inkeliz.com>
This commit is contained in:
Inkeliz
2021-07-11 16:37:09 +01:00
committed by Elias Naur
parent 0e60935856
commit ca722508ce
2 changed files with 13 additions and 8 deletions
+1 -3
View File
@@ -266,9 +266,7 @@ public final class GioView extends SurfaceView implements Choreographer.FrameCal
} }
@Override public InputConnection onCreateInputConnection(EditorInfo editor) { @Override public InputConnection onCreateInputConnection(EditorInfo editor) {
// The TYPE_TEXT_FLAG_NO_SUGGESTIONS and TYPE_TEXT_VARIATION_VISIBLE_PASSWORD are used to fix the editor.inputType = this.keyboardHint;
// Samsung keyboard compatibility, forcing to disable the suggests/auto-complete. gio#116.
editor.inputType = InputType.TYPE_TEXT_FLAG_NO_SUGGESTIONS | InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD | this.keyboardHint;
editor.imeOptions = EditorInfo.IME_FLAG_NO_FULLSCREEN | EditorInfo.IME_FLAG_NO_EXTRACT_UI; editor.imeOptions = EditorInfo.IME_FLAG_NO_FULLSCREEN | EditorInfo.IME_FLAG_NO_EXTRACT_UI;
return new InputConnection(this); return new InputConnection(this);
} }
+8 -1
View File
@@ -620,6 +620,8 @@ func (w *window) SetInputHint(mode key.InputHint) {
TYPE_CLASS_NUMBER = 2 TYPE_CLASS_NUMBER = 2
TYPE_NUMBER_FLAG_DECIMAL = 8192 TYPE_NUMBER_FLAG_DECIMAL = 8192
TYPE_NUMBER_FLAG_SIGNED = 4096 TYPE_NUMBER_FLAG_SIGNED = 4096
TYPE_TEXT_FLAG_NO_SUGGESTIONS = 524288
TYPE_TEXT_VARIATION_VISIBLE_PASSWORD = 144
) )
runInJVM(javaVM(), func(env *C.JNIEnv) { runInJVM(javaVM(), func(env *C.JNIEnv) {
@@ -628,9 +630,14 @@ func (w *window) SetInputHint(mode key.InputHint) {
case key.HintNumeric: case key.HintNumeric:
m = TYPE_CLASS_NUMBER | TYPE_NUMBER_FLAG_DECIMAL | TYPE_NUMBER_FLAG_SIGNED m = TYPE_CLASS_NUMBER | TYPE_NUMBER_FLAG_DECIMAL | TYPE_NUMBER_FLAG_SIGNED
default: default:
// TYPE_NULL, since TYPE_CLASS_TEXT isn't currently supported (gio#116), so TYPE_NULL is used instead. // TYPE_NULL, since TYPE_CLASS_TEXT isn't currently supported.
m = TYPE_NULL m = TYPE_NULL
} }
// The TYPE_TEXT_FLAG_NO_SUGGESTIONS and TYPE_TEXT_VARIATION_VISIBLE_PASSWORD are used to fix the
// Samsung keyboard compatibility, forcing to disable the suggests/auto-complete. gio#116.
m = m | TYPE_TEXT_FLAG_NO_SUGGESTIONS | TYPE_TEXT_VARIATION_VISIBLE_PASSWORD
callVoidMethod(env, w.view, gioView.setInputHint, m) callVoidMethod(env, w.view, gioView.setInputHint, m)
}) })
} }