summaryrefslogtreecommitdiffstats
path: root/src/gui
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui')
-rw-r--r--src/gui/inputmethod/qcoefepinputcontext_p.h1
-rw-r--r--src/gui/inputmethod/qcoefepinputcontext_s60.cpp10
-rw-r--r--src/gui/kernel/qapplication_s60.cpp3
-rw-r--r--src/gui/kernel/qt_s60_p.h4
4 files changed, 14 insertions, 4 deletions
diff --git a/src/gui/inputmethod/qcoefepinputcontext_p.h b/src/gui/inputmethod/qcoefepinputcontext_p.h
index b17d9c7..d9d577a 100644
--- a/src/gui/inputmethod/qcoefepinputcontext_p.h
+++ b/src/gui/inputmethod/qcoefepinputcontext_p.h
@@ -225,6 +225,7 @@ private:
Q_GUI_EXPORT void qt_s60_setPartialScreenInputMode(bool enable);
Q_GUI_EXPORT void qt_s60_setPartialScreenAutomaticTranslation(bool enable);
+Q_GUI_EXPORT void qt_s60_setEditorFlags(int flags);
QT_END_NAMESPACE
diff --git a/src/gui/inputmethod/qcoefepinputcontext_s60.cpp b/src/gui/inputmethod/qcoefepinputcontext_s60.cpp
index 44e0df0..3bcac62 100644
--- a/src/gui/inputmethod/qcoefepinputcontext_s60.cpp
+++ b/src/gui/inputmethod/qcoefepinputcontext_s60.cpp
@@ -367,6 +367,11 @@ Q_GUI_EXPORT void qt_s60_setPartialScreenAutomaticTranslation(bool enable)
S60->partial_keyboardAutoTranslation = enable;
}
+Q_GUI_EXPORT void qt_s60_setEditorFlags(int flags)
+{
+ S60->editorFlags |= flags;
+}
+
QCoeFepInputContext::QCoeFepInputContext(QObject *parent)
: QInputContext(parent),
m_fepState(q_check_ptr(new CAknEdwinState)), // CBase derived object needs check on new
@@ -1160,6 +1165,11 @@ void QCoeFepInputContext::applyHints(Qt::InputMethodHints hints)
if (hints & ImhNoPredictiveText || hints & ImhHiddenText) {
flags |= EAknEditorFlagNoT9;
}
+
+ if ((hints & (ImhEmailCharactersOnly | ImhUrlCharactersOnly)) && (S60->editorFlags & EAknEditorFlagLatinInputModesOnly)){
+ flags |= EAknEditorFlagLatinInputModesOnly;
+ }
+
if (needsCharMap)
flags |= EAknEditorFlagUseSCTNumericCharmap;
m_fepState->SetFlags(flags);
diff --git a/src/gui/kernel/qapplication_s60.cpp b/src/gui/kernel/qapplication_s60.cpp
index bb84491..ca9c3a3 100644
--- a/src/gui/kernel/qapplication_s60.cpp
+++ b/src/gui/kernel/qapplication_s60.cpp
@@ -2069,9 +2069,6 @@ extern void qt_cleanup_symbianFontDatabase(); // qfontdatabase_s60.cpp
*****************************************************************************/
void qt_cleanup()
{
-#ifdef Q_WS_S60
- S60->setButtonGroupContainer(0);
-#endif
if(qt_S60Beep) {
delete qt_S60Beep;
qt_S60Beep = 0;
diff --git a/src/gui/kernel/qt_s60_p.h b/src/gui/kernel/qt_s60_p.h
index 5b5d5ce..c75b20e 100644
--- a/src/gui/kernel/qt_s60_p.h
+++ b/src/gui/kernel/qt_s60_p.h
@@ -230,6 +230,7 @@ public:
int beginFullScreenCalled : 1;
int endFullScreenCalled : 1;
+ int editorFlags;
};
Q_AUTOTEST_EXPORT QS60Data* qGlobalS60Data();
@@ -390,7 +391,8 @@ inline QS60Data::QS60Data()
,s60InstalledTrapHandler(0)
#endif
,beginFullScreenCalled(0),
- endFullScreenCalled(0)
+ endFullScreenCalled(0),
+ editorFlags(0)
{
}