src/hbplugins/inputmethods/touchinput/hbinput12keytouchkeyboard.cpp
changeset 7 923ff622b8b9
parent 6 c3690ec91ef8
child 21 4633027730f5
child 34 ed14f46c0e55
--- a/src/hbplugins/inputmethods/touchinput/hbinput12keytouchkeyboard.cpp	Wed Jun 23 18:33:25 2010 +0300
+++ b/src/hbplugins/inputmethods/touchinput/hbinput12keytouchkeyboard.cpp	Tue Jul 06 14:36:53 2010 +0300
@@ -36,7 +36,7 @@
 #include "hbinputbutton.h"
 #include "hbinputmodeindicator.h"
 
-const qreal HbKeyboardHeightInUnits = 37.8;
+const qreal HbKeyboardHeightInUnits = 36.9;
 const qreal HbKeyboardWidthInUnits = 53.8;
 
 const int HbFirstRowIndex = 0;
@@ -254,10 +254,21 @@
                 ++key;
             } else if (keyCode(i) == HbInputButton::ButtonKeyCodeShift) {
                 if (mMode == EModeNumeric) {
-                    item->setText(QString("#"), HbInputButton::ButtonTextIndexSecondaryFirstRow);
+                    item->setIcon(HbIcon(), HbInputButton::ButtonIconIndexPrimary);
+                    item->setText(QString("#"), HbInputButton::ButtonTextIndexPrimary);
+                    item->setText(QString(), HbInputButton::ButtonTextIndexSecondaryFirstRow);
                 } else if (mMode == EModeAbc) {
+                    item->setIcon(HbIcon(HbInputButtonIconShift), HbInputButton::ButtonIconIndexPrimary);
                     item->setText(QString(" "), HbInputButton::ButtonTextIndexSecondaryFirstRow);
                 }
+            } else if (keyCode(i) == HbInputButton::ButtonKeyCodeAsterisk) {
+                if (mMode == EModeNumeric) {
+                    item->setText(QString("*"), HbInputButton::ButtonTextIndexPrimary);
+                    item->setText(QString(""), HbInputButton::ButtonTextIndexSecondaryFirstRow);
+                } else if (mMode == EModeAbc) {
+                    item->setText(QString("*"), HbInputButton::ButtonTextIndexPrimary);
+                    item->setText(QString("+"), HbInputButton::ButtonTextIndexSecondaryFirstRow);
+                }
             }
         }
         buttonGroup->setButtons(buttons);
@@ -344,4 +355,19 @@
     return QSizeF(result);
 }
 
+/*!
+Sends key event to owning input method.
+*/
+void Hb12KeyTouchKeyboard::sendLongPressEvent(const QKeyEvent &event)
+{
+    Q_D(Hb12KeyTouchKeyboard);
+    if (d->mMode == EModeAbc) {
+        HbInputButtonGroup *buttonGroup = static_cast<HbInputButtonGroup*>(contentItem());
+        if (buttonGroup) {
+            buttonGroup->cancelButtonPress();
+        }
+    }
+    HbInputVkbWidget::sendLongPressEvent(event);
+}
+
 // End of file