mirror of
https://git.sr.ht/~eliasnaur/gio
synced 2026-07-07 18:35:34 +00:00
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:
@@ -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);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -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)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user