INNER CODE UNIT · C
IN_Android_KeyEvent2UCS
Qfusion/qfusion · source/android/android_input.c:73
static wchar_t IN_Android_KeyEvent2UCS( const AInputEvent *event ) {
JNIEnv *env = Sys_Android_GetJNIEnv();
static jclass mapClass;
static jmethodID load, get;
jobject map;
unsigned int ucs;
if( !mapClass ) {
jclass mapClassRef;
mapClassRef = ( *env )->FindClass( env, "android/view/KeyCharacterMap" );
mapClass = ( *env )->NewGlobalRef( env, mapClassRef );
load = ( *env )->GetStaticMethodID( env, mapClass, "load", "(I)Landroid/view/KeyCharacterMap;" );
get = ( *env )->GetMethodID( env, mapClass, "get", "(II)I" );
( *env )->DeleteLocalRef( env, mapClassRef );
}
map = ( *env )->CallStaticObjectMethod( env, mapClass, load, AInputEvent_getDeviceId( event ) );