author | hash <hash> | 2002-08-21 17:54:33 (UTC) |
---|---|---|
committer | hash <hash> | 2002-08-21 17:54:33 (UTC) |
commit | 0a61be3b42b4b152468a5ef2def4a18baeda9b4f (patch) (unidiff) | |
tree | aa82e34a4d4984ae334ffbd31582ac60a655e499 /inputmethods | |
parent | 24ca0a148bdb23f5c890661dc2edac7ba6120c67 (diff) | |
download | opie-0a61be3b42b4b152468a5ef2def4a18baeda9b4f.zip opie-0a61be3b42b4b152468a5ef2def4a18baeda9b4f.tar.gz opie-0a61be3b42b4b152468a5ef2def4a18baeda9b4f.tar.bz2 |
ctrl and alt keys should work now
-rw-r--r-- | inputmethods/multikey/configdlg.cpp | 1 | ||||
-rw-r--r-- | inputmethods/multikey/keyboard.cpp | 8 |
2 files changed, 8 insertions, 1 deletions
diff --git a/inputmethods/multikey/configdlg.cpp b/inputmethods/multikey/configdlg.cpp index 89b713e..a9137b9 100644 --- a/inputmethods/multikey/configdlg.cpp +++ b/inputmethods/multikey/configdlg.cpp | |||
@@ -1,16 +1,17 @@ | |||
1 | /* | 1 | /* |
2 | * TODO | 2 | * TODO |
3 | * make a font selection thing (size too) | 3 | * make a font selection thing (size too) |
4 | * make a cursor thing | 4 | * make a cursor thing |
5 | * add meta key support for german, etc | ||
5 | * | 6 | * |
6 | * | 7 | * |
7 | * | 8 | * |
8 | */ | 9 | */ |
9 | 10 | ||
10 | #include <iostream.h> | 11 | #include <iostream.h> |
11 | 12 | ||
12 | #include <qpe/qpeapplication.h> | 13 | #include <qpe/qpeapplication.h> |
13 | #include <qpe/config.h> | 14 | #include <qpe/config.h> |
14 | 15 | ||
15 | #include <qwidget.h> | 16 | #include <qwidget.h> |
16 | #include <qdialog.h> | 17 | #include <qdialog.h> |
diff --git a/inputmethods/multikey/keyboard.cpp b/inputmethods/multikey/keyboard.cpp index 7334c1c..949164a 100644 --- a/inputmethods/multikey/keyboard.cpp +++ b/inputmethods/multikey/keyboard.cpp | |||
@@ -349,25 +349,31 @@ void Keyboard::mousePressEvent(QMouseEvent *e) | |||
349 | unicode = keys->shift(unicode); | 349 | unicode = keys->shift(unicode); |
350 | } | 350 | } |
351 | } | 351 | } |
352 | 352 | ||
353 | // korean parsing | 353 | // korean parsing |
354 | if (keys->lang == "ko") { | 354 | if (keys->lang == "ko") { |
355 | 355 | ||
356 | unicode = parseKoreanInput(unicode); | 356 | unicode = parseKoreanInput(unicode); |
357 | } | 357 | } |
358 | 358 | ||
359 | modifiers = (ctrl ? Qt::ControlButton : 0) | (alt ? Qt::AltButton : 0); | 359 | modifiers = (ctrl ? Qt::ControlButton : 0) | (alt ? Qt::AltButton : 0); |
360 | 360 | ||
361 | emit key(unicode, qkeycode, modifiers, true, false); | 361 | if ('A' <= unicode && unicode <= 'z' && modifiers) { |
362 | |||
363 | qkeycode = QChar(unicode).upper(); | ||
364 | unicode = qkeycode - '@'; | ||
365 | } | ||
366 | |||
367 | QWSServer::sendKeyEvent(unicode, qkeycode, modifiers, true, false); | ||
362 | 368 | ||
363 | // pickboard stuff | 369 | // pickboard stuff |
364 | if (usePicks) { | 370 | if (usePicks) { |
365 | 371 | ||
366 | KeyboardConfig *dc = picks->dc; | 372 | KeyboardConfig *dc = picks->dc; |
367 | 373 | ||
368 | if (dc) { | 374 | if (dc) { |
369 | if (qkeycode == Qt::Key_Backspace) { | 375 | if (qkeycode == Qt::Key_Backspace) { |
370 | dc->input.remove(dc->input.last()); // remove last input | 376 | dc->input.remove(dc->input.last()); // remove last input |
371 | dc->decBackspaces(); | 377 | dc->decBackspaces(); |
372 | } else if ( qkeycode == Qt::Key_Return || QChar(unicode).isPunct() || QChar(unicode).isSpace() || unicode == 0) { | 378 | } else if ( qkeycode == Qt::Key_Return || QChar(unicode).isPunct() || QChar(unicode).isSpace() || unicode == 0) { |
373 | dc->input.clear(); | 379 | dc->input.clear(); |