src/hbplugins/inputmethods/touchinput/hbinputpredictionqwertyhandler.cpp
changeset 21 4633027730f5
parent 7 923ff622b8b9
child 23 e6ad4ef83b23
--- a/src/hbplugins/inputmethods/touchinput/hbinputpredictionqwertyhandler.cpp	Tue Jul 06 14:36:53 2010 +0300
+++ b/src/hbplugins/inputmethods/touchinput/hbinputpredictionqwertyhandler.cpp	Wed Aug 18 10:05:37 2010 +0300
@@ -133,7 +133,6 @@
     case HbInputButton::ButtonKeyCodeSymbol: { // Ctrl/Chr
     case HbInputButton::ButtonKeyCodeAlphabet:
         mInputMethod->switchSpecialCharacterTable();
-        q->HbInputPredictionHandler::actionHandler(HbInputModeHandler::HbInputModeActionSetKeypad);
         }		
         break;
     case HbInputButton::ButtonKeyCodeSettings:
@@ -328,7 +327,7 @@
         mCanContinuePrediction = true;
 
         int tailLength =  mInputMethod->focusObject()->preEditString().length() - mEngine->inputLength();
-        if(tailLength <= 0 && true == mExactPopupLaunched) {
+        if( true == mExactPopupLaunched ) {
             mEngine->deleteKeyPress();
             mEngine->updateCandidates(mBestGuessLocation);
         }
@@ -472,8 +471,7 @@
 void HbInputPredictionQwertyHandlerPrivate::showExactWordPopupIfNeeded()
 {
     Q_Q(HbInputPredictionHandler);
-    if (mShowTooltip && mCandidates->count() > mPrimaryCandidateIndex && mCandidates->at(0).mid(0, mEngine->inputLength()) \
-        != mCandidates->at(mPrimaryCandidateIndex).mid(0, mEngine->inputLength())) {                
+    if (mShowTooltip && mCandidates && mCandidates->count() > mPrimaryCandidateIndex && mPrimaryCandidateIndex != mSecondaryCandidateIndex) {                
         q->processExactWord(mCandidates->at(mSecondaryCandidateIndex));
     } else {
         QString empty;