diff options
author | Olivier Goffart <olivier.goffart@nokia.com> | 2011-02-17 10:32:57 (GMT) |
---|---|---|
committer | Olivier Goffart <olivier.goffart@nokia.com> | 2011-02-17 10:32:57 (GMT) |
commit | 57f2c8b9bd3a7cfd0e1f9636880cb9a6130da885 (patch) | |
tree | 982e37fb314d9c8e5d4cd0a240499edb56710808 /tests/auto/qinputcontext/tst_qinputcontext.cpp | |
parent | dee5662e0218e754d425c8960edb1e8ffd27fde6 (diff) | |
parent | 6e323d672ce679b253eb1d49bac1669349067a7b (diff) | |
download | Qt-57f2c8b9bd3a7cfd0e1f9636880cb9a6130da885.zip Qt-57f2c8b9bd3a7cfd0e1f9636880cb9a6130da885.tar.gz Qt-57f2c8b9bd3a7cfd0e1f9636880cb9a6130da885.tar.bz2 |
Merge remote-tracking branch 'origin/4.7' into qt-master-from-4.7
Conflicts:
mkspecs/features/symbian/symbian_building.prf
mkspecs/symbian-gcce/qmake.conf
src/corelib/global/qnamespace.h
src/corelib/global/qnamespace.qdoc
src/plugins/plugins.pro
tests/auto/qstylesheetstyle/tst_qstylesheetstyle.cpp
tools/designer/src/components/signalsloteditor/signalslot_utils.cpp
tools/designer/src/components/signalsloteditor/signalsloteditorwindow.cpp
Diffstat (limited to 'tests/auto/qinputcontext/tst_qinputcontext.cpp')
-rw-r--r-- | tests/auto/qinputcontext/tst_qinputcontext.cpp | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/tests/auto/qinputcontext/tst_qinputcontext.cpp b/tests/auto/qinputcontext/tst_qinputcontext.cpp index 800f9de..6a047f2 100644 --- a/tests/auto/qinputcontext/tst_qinputcontext.cpp +++ b/tests/auto/qinputcontext/tst_qinputcontext.cpp @@ -88,6 +88,7 @@ private slots: void closeSoftwareInputPanel(); void selections(); void focusProxy(); + void contextInheritance(); void symbianTestCoeFepInputContext_data(); void symbianTestCoeFepInputContext(); void symbianTestCoeFepAutoCommit_data(); @@ -473,6 +474,37 @@ void tst_QInputContext::focusProxy() QCOMPARE(gic->focusWidget(), &proxy); } +void tst_QInputContext::contextInheritance() +{ + QWidget parent; + QWidget child(&parent); + + parent.setAttribute(Qt::WA_InputMethodEnabled, true); + child.setAttribute(Qt::WA_InputMethodEnabled, true); + + QCOMPARE(parent.inputContext(), qApp->inputContext()); + QCOMPARE(child.inputContext(), qApp->inputContext()); + + QInputContext *qic = new QFilterInputContext; + parent.setInputContext(qic); + QCOMPARE(parent.inputContext(), qic); + QCOMPARE(child.inputContext(), qic); + + parent.setAttribute(Qt::WA_InputMethodEnabled, false); + QVERIFY(!parent.inputContext()); + QCOMPARE(child.inputContext(), qic); + parent.setAttribute(Qt::WA_InputMethodEnabled, true); + + parent.setInputContext(0); + QCOMPARE(parent.inputContext(), qApp->inputContext()); + QCOMPARE(child.inputContext(), qApp->inputContext()); + + qic = new QFilterInputContext; + qApp->setInputContext(qic); + QCOMPARE(parent.inputContext(), qic); + QCOMPARE(child.inputContext(), qic); +} + #ifdef QT_WEBKIT_LIB class AutoWebView : public QWebView { |