diff options
author | Sami Merila <sami.merila@nokia.com> | 2011-05-09 13:21:11 (GMT) |
---|---|---|
committer | Sami Merila <sami.merila@nokia.com> | 2011-05-09 13:21:11 (GMT) |
commit | 0dce79459e4ac5b2ed64c01052206e21764d8933 (patch) | |
tree | 38c6d28e95054edea1eb7db771e043f0c0974d4a /src/gui/inputmethod | |
parent | fa53804c12e692d29421e22e2c59f6aff2d519e7 (diff) | |
download | Qt-0dce79459e4ac5b2ed64c01052206e21764d8933.zip Qt-0dce79459e4ac5b2ed64c01052206e21764d8933.tar.gz Qt-0dce79459e4ac5b2ed64c01052206e21764d8933.tar.bz2 |
Provide internal API to avoid automatic translation of input widget
There will be cases when client will want to disable splitview
automatic view translation, so that keyboard is just brought on top of
the application and no other actions happen. There will be no new
public Qt GUI API to cover the cases (the public API will come from
QML Components), but the implementation is done with new private API.
Task-number: QTBUG-18716
Reviewed-by: Miikka Heikkinen
Diffstat (limited to 'src/gui/inputmethod')
-rw-r--r-- | src/gui/inputmethod/qcoefepinputcontext_p.h | 1 | ||||
-rw-r--r-- | src/gui/inputmethod/qcoefepinputcontext_s60.cpp | 10 |
2 files changed, 9 insertions, 2 deletions
diff --git a/src/gui/inputmethod/qcoefepinputcontext_p.h b/src/gui/inputmethod/qcoefepinputcontext_p.h index de3577f..57c1e45 100644 --- a/src/gui/inputmethod/qcoefepinputcontext_p.h +++ b/src/gui/inputmethod/qcoefepinputcontext_p.h @@ -168,6 +168,7 @@ private: }; Q_GUI_EXPORT void qt_s60_setPartialScreenInputMode(bool enable); +Q_GUI_EXPORT void qt_s60_setPartialScreenAutomaticTranslation(bool enable); QT_END_NAMESPACE diff --git a/src/gui/inputmethod/qcoefepinputcontext_s60.cpp b/src/gui/inputmethod/qcoefepinputcontext_s60.cpp index 06dc25c..a4d53c0 100644 --- a/src/gui/inputmethod/qcoefepinputcontext_s60.cpp +++ b/src/gui/inputmethod/qcoefepinputcontext_s60.cpp @@ -88,6 +88,11 @@ Q_GUI_EXPORT void qt_s60_setPartialScreenInputMode(bool enable) ic->update(); } +Q_GUI_EXPORT void qt_s60_setPartialScreenAutomaticTranslation(bool enable) +{ + S60->partial_keyboardAutoTranslation = enable; +} + QCoeFepInputContext::QCoeFepInputContext(QObject *parent) : QInputContext(parent), m_fepState(q_check_ptr(new CAknEdwinState)), // CBase derived object needs check on new @@ -559,12 +564,13 @@ void QCoeFepInputContext::ensureFocusWidgetVisible(QWidget *widget) widget->resize(widget->width(), splitViewRect.height() - windowTop); } - if (gv->scene()) { + if (gv->scene() && S60->partial_keyboardAutoTranslation) { const QRectF microFocusRect = gv->scene()->inputMethodQuery(Qt::ImMicroFocus).toRectF(); gv->ensureVisible(microFocusRect); } } else { - translateInputWidget(); + if (S60->partial_keyboardAutoTranslation) + translateInputWidget(); } if (alwaysResize) |