summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--qt/qte233-for-opie091-keyboard.patch4
1 files changed, 2 insertions, 2 deletions
diff --git a/qt/qte233-for-opie091-keyboard.patch b/qt/qte233-for-opie091-keyboard.patch
index c1b85b6..9d76a64 100644
--- a/qt/qte233-for-opie091-keyboard.patch
+++ b/qt/qte233-for-opie091-keyboard.patch
@@ -14,49 +14,49 @@
#endif
bool caps;
- bool extended;
+ int extended;
int modifiers;
int prevuni;
int prevkey;
@@ -524,7 +524,7 @@
shift = false;
alt = false;
ctrl = false;
- extended = false;
+ extended = 0;
prevuni = 0;
prevkey = 0;
caps = FALSE;
@@ -561,10 +561,24 @@
int keyCode = Qt::Key_unknown;
bool release = false;
int keypad = 0;
+#if defined(QT_QWS_IPAQ)
+ static int ipaq_return_pressed = false; // iPAQ Action Key has ScanCode 0x60: 0x60|0x80 = 0xe0 == extended mode 1 !
+#endif
+
- #if !defined(QT_QWS_SHARP)
+ #if !defined(QT_QWS_CUSTOM)
- if (code == 224) {
+ if ((code == 224)
+#if defined(QT_QWS_IPAQ)
+ && !ipaq_return_pressed
+#endif
+ )
+ {
// extended
- extended = true;
+ extended = 1;
+ return;
+ }
+ else if (code == 225) {
+ // extended 2
+ extended = 2;
return;
}
#endif
@@ -574,7 +588,7 @@
code &= 0x7f;
}
- if (extended) {
+ if (extended == 1) {
@@ -74,49 +74,49 @@
+ keyCode = Qt::Key_SysReq;
+ break;
+ case 0x38:
+ keyCode = Qt::Key_Alt;
+ break;
+ case 0x5b:
+ keyCode = Qt::Key_Super_L;
+ break;
+ case 0x5c:
+ keyCode = Qt::Key_Super_R;
+ break;
+ case 0x5d:
+ keyCode = Qt::Key_Menu;
+ break;
+ }
+ } else if (extended == 2) {
+ switch (code) {
+ case 0x1d:
+ return;
+ case 0x45:
+ keyCode = Qt::Key_Pause;
+ break;
}
} else {
- #if defined(QT_QWS_SHARP)
+ #if defined(QT_QWS_CUSTOM)
@@ -650,6 +690,7 @@
repeatable = FALSE;
break;
case 0x60:
+ ipaq_return_pressed = !release;
keyCode = Key_Return;
break;
case 0x67:
@@ -687,13 +728,19 @@
else
repeater->stop();
#endif
+
+ /*
+ Translate shift+Key_Tab to Key_Backtab
+ */
+ if (( keyCode == Key_Tab ) && shift )
+ keyCode = Key_Backtab;
}
/*
Keypad consists of extended keys 53 and 28,
and non-extended keys 55 and 71 through 83.
*/