--- a/src/hbplugins/inputmethods/common/hbinputpredictionhandler.cpp Tue Jul 06 14:36:53 2010 +0300
+++ b/src/hbplugins/inputmethods/common/hbinputpredictionhandler.cpp Wed Aug 18 10:05:37 2010 +0300
@@ -34,6 +34,8 @@
#include <hbcolorscheme.h>
#include <hbinpututils.h>
#include <hbinputbutton.h>
+#include <hbmainwindow.h>
+
#include "../touchinput/virtualqwerty.h"
#include "hbinputpredictionhandler_p.h"
@@ -555,7 +557,7 @@
mEngine->setWord(string);
bool used = false;
mEngine->updateCandidates(mBestGuessLocation, used);
- if(showAutocompletionPart) {
+ if(showAutocompletionPart && mShowTail) {
mShowTail = true;
} else {
mShowTail = false;
@@ -619,7 +621,7 @@
break;
case HbInputModeActionSetKeypad: {
if (d->mEngine) {
- d->mEngine->setKeyboard(d->mInputMethod->inputState().keyboard());
+ d->mEngine->setKeyboard(d->mInputMethod->currentKeyboardType());
} else {
ret = false;;
}
@@ -651,6 +653,9 @@
case HbInputModeActionCloseSpellQuery:
closeSpellQueryDialog();
break;
+ case HbInputModeActionRestorePreviousState:
+ showExactWordPopupIfNeeded();
+ break;
default:
ret = HbInputModeHandler::actionHandler(action);
break;
@@ -802,6 +807,10 @@
string = (*(d->mCandidates))[d->mBestGuessLocation].left(d->mEngine->inputLength());
}
d->reset();
+
+ QObject::connect(d->mSpellQueryDialog->mainWindow(), SIGNAL(orientationChanged(Qt::Orientation)),
+ this, SLOT(closeSpellQueryDialog()));
+
d->mSpellQueryDialog->launch(string);
}
@@ -832,7 +841,7 @@
if(abstractEdit) {
abstractEdit->setCursorPosition(abstractEdit->cursorPosition());
}
- d->mInputMethod->setFocusObject(newFocusObject);
+ HbInputMethod::activeInputMethod()->setFocusObject(newFocusObject);
if (closeReason == HbInputSpellQuery::HbOkPressed) {
d->commit(string,true);