summaryrefslogtreecommitdiffstats
path: root/src/gui/inputmethod
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/inputmethod')
-rw-r--r--src/gui/inputmethod/qcoefepinputcontext_s60.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/gui/inputmethod/qcoefepinputcontext_s60.cpp b/src/gui/inputmethod/qcoefepinputcontext_s60.cpp
index 3a12d26..fcb809c 100644
--- a/src/gui/inputmethod/qcoefepinputcontext_s60.cpp
+++ b/src/gui/inputmethod/qcoefepinputcontext_s60.cpp
@@ -912,8 +912,14 @@ void QCoeFepInputContext::translateInputWidget()
qreal dy = -(qMin(maxY, (cursor.bottom() - vkbRect.top() / 2)));
// Do not allow transform above screen top.
- if (m_transformation.height() + dy > 0)
+ if (m_transformation.height() + dy > 0) {
+ // If we already have some transformation, remove it.
+ if (m_transformation.height() < 0) {
+ rootItem->resetTransform();
+ translateInputWidget();
+ }
return;
+ }
rootItem->setTransform(QTransform::fromTranslate(0, dy), true);
}