summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/android/src/androidjniinput.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/plugins/platforms/android/src/androidjniinput.cpp')
-rw-r--r--src/plugins/platforms/android/src/androidjniinput.cpp57
1 files changed, 49 insertions, 8 deletions
diff --git a/src/plugins/platforms/android/src/androidjniinput.cpp b/src/plugins/platforms/android/src/androidjniinput.cpp
index 4a2d87d6a4..30d4e69afe 100644
--- a/src/plugins/platforms/android/src/androidjniinput.cpp
+++ b/src/plugins/platforms/android/src/androidjniinput.cpp
@@ -228,6 +228,9 @@ namespace QtAndroidInput
return;
QAndroidPlatformIntegration *platformIntegration = QtAndroid::androidPlatformIntegration();
+ if (!platformIntegration)
+ return;
+
QTouchDevice *touchDevice = platformIntegration->touchDevice();
if (touchDevice == 0) {
touchDevice = new QTouchDevice;
@@ -271,8 +274,8 @@ namespace QtAndroidInput
case 0x00000005:
return Qt::Key_Call;
- case 0x0000001b:
- return Qt::Key_WebCam;
+ case 0x0000001b: // KEYCODE_CAMERA
+ return Qt::Key_Camera;
case 0x0000001c:
return Qt::Key_Clear;
@@ -280,7 +283,7 @@ namespace QtAndroidInput
case 0x00000037:
return Qt::Key_Comma;
- case 0x00000043:
+ case 0x00000043: // KEYCODE_DEL
return Qt::Key_Backspace;
case 0x00000017: // KEYCODE_DPAD_CENTER
@@ -398,6 +401,27 @@ namespace QtAndroidInput
case 0x00000018:
return Qt::Key_VolumeUp;
+ case 0x00000011: // KEYCODE_STAR
+ return Qt::Key_Asterisk;
+
+ case 0x00000012: // KEYCODE_POUND
+ return Qt::Key_NumberSign;
+
+ case 0x00000050: // KEYCODE_FOCUS
+ return Qt::Key_CameraFocus;
+
+ case 0x00000070: // KEYCODE_FORWARD_DEL
+ return Qt::Key_Delete;
+
+ case 0x00000080: // KEYCODE_MEDIA_CLOSE
+ return Qt::Key_Close;
+
+ case 0x00000081: // KEYCODE_MEDIA_EJECT
+ return Qt::Key_Eject;
+
+ case 0x00000082: // KEYCODE_MEDIA_RECORD
+ return Qt::Key_MediaRecord;
+
case 0x000000b7: // KEYCODE_PROG_RED
return Qt::Key_Red;
@@ -416,13 +440,30 @@ namespace QtAndroidInput
case 0x000000a7: // KEYCODE_CHANNEL_DOWN
return Qt::Key_ChannelDown;
+ case 0x000000a8: // KEYCODE_ZOOM_IN
+ return Qt::Key_ZoomIn;
+
+ case 0x000000a9: // KEYCODE_ZOOM_OUT
+ return Qt::Key_ZoomOut;
+
+ case 0x000000af: // KEYCODE_CAPTIONS
+ return Qt::Key_Subtitle;
+
+ case 0x000000d0: // KEYCODE_CALENDAR
+ return Qt::Key_Calendar;
+
+ case 0x000000d1: // KEYCODE_MUSIC
+ return Qt::Key_Music;
+
+ case 0x000000d2: // KEYCODE_CALCULATOR
+ return Qt::Key_Calculator;
+
case 0x00000000: // KEYCODE_UNKNOWN
- case 0x00000011: // KEYCODE_STAR ?!?!?
- case 0x00000012: // KEYCODE_POUND ?!?!?
+ return Qt::Key_unknown;
+
case 0x00000053: // KEYCODE_NOTIFICATION ?!?!?
case 0x0000004f: // KEYCODE_HEADSETHOOK ?!?!?
case 0x00000044: // KEYCODE_GRAVE ?!?!?
- case 0x00000050: // KEYCODE_FOCUS ?!?!?
return Qt::Key_Any;
default:
@@ -447,7 +488,7 @@ namespace QtAndroidInput
mapAndroidKey(key),
modifiers,
QChar(unicode),
- true);
+ false);
}
static void keyUp(JNIEnv */*env*/, jobject /*thiz*/, jint key, jint unicode, jint modifier)
@@ -467,7 +508,7 @@ namespace QtAndroidInput
mapAndroidKey(key),
modifiers,
QChar(unicode),
- true);
+ false);
}