src/hbplugins/inputmethods/common/hbinputbasichandler.cpp
changeset 7 923ff622b8b9
parent 6 c3690ec91ef8
child 21 4633027730f5
child 34 ed14f46c0e55
--- a/src/hbplugins/inputmethods/common/hbinputbasichandler.cpp	Wed Jun 23 18:33:25 2010 +0300
+++ b/src/hbplugins/inputmethods/common/hbinputbasichandler.cpp	Tue Jul 06 14:36:53 2010 +0300
@@ -155,8 +155,12 @@
     switch (event->key()) {
     case Qt::Key_Backspace:
     case HbInputButton::ButtonKeyCodeDelete: {
-        QKeyEvent keyEvent(QEvent::KeyPress, Qt::Key_Backspace, Qt::NoModifier);
-        sendAndUpdate(keyEvent);
+        // passing both the keypress and keyrelease events
+        // as webkit requires both the events to be delivered to them.
+        QKeyEvent keyEventPress(QEvent::KeyPress, Qt::Key_Backspace, Qt::NoModifier);
+        QKeyEvent keyEventRelease(QEvent::KeyRelease, Qt::Key_Backspace, Qt::NoModifier);
+        sendAndUpdate(keyEventPress);
+        sendAndUpdate(keyEventRelease);
         // pass event to auto completer.
         deleteCharacterInAutoCompleter();
         // return false since the event is sent forward
@@ -173,6 +177,10 @@
         }
         break;
     case HbInputButton::ButtonKeyCodeSettings:
+        // Hide the autocompletion popup when InputSetting dialog is launched
+        if(d->mAutoCompleter) {
+            d->mInputMethod->closeAutoCompletionPopup();
+        }
 		break;
     default:
         ret = HbInputModeHandler::filterEvent(event);