From 3f311a5b3aac70d9dc7072ef78e14f81a2a65253 Mon Sep 17 00:00:00 2001 From: Joona Petrell Date: Thu, 22 Sep 2011 16:43:27 +0300 Subject: Add autotest for QInputPanel Change-Id: I8ac28d93f610cd3eb69087d2c961a5aab6c47e1e Reviewed-on: http://codereview.qt-project.org/5394 Reviewed-by: Qt Sanity Bot Reviewed-by: Lars Knoll --- src/gui/kernel/qinputpanel.cpp | 19 +++++++++++-------- src/gui/kernel/qinputpanel_p.h | 14 +++++++++++++- 2 files changed, 24 insertions(+), 9 deletions(-) (limited to 'src/gui') diff --git a/src/gui/kernel/qinputpanel.cpp b/src/gui/kernel/qinputpanel.cpp index f2567f1bfb..19c0d4a9ce 100644 --- a/src/gui/kernel/qinputpanel.cpp +++ b/src/gui/kernel/qinputpanel.cpp @@ -41,8 +41,6 @@ #include #include -#include -#include QInputPanel::QInputPanel() : QObject(*new QInputPanelPrivate) @@ -109,7 +107,8 @@ QRectF QInputPanel::cursorRectangle() const QRectF QInputPanel::keyboardRectangle() { - QPlatformInputContext *ic = QGuiApplicationPrivate::platformIntegration()->inputContext(); + Q_D(QInputPanel); + QPlatformInputContext *ic = d->platformInputContext(); if (ic) return ic->keyboardRect(); return QRectF(); @@ -144,7 +143,8 @@ void QInputPanel::setVisible(bool visible) bool QInputPanel::isAnimating() const { - QPlatformInputContext *ic = QGuiApplicationPrivate::platformIntegration()->inputContext(); + Q_D(const QInputPanel); + QPlatformInputContext *ic = d->platformInputContext(); if (ic) return ic->isAnimating(); return false; @@ -158,7 +158,7 @@ void QInputPanel::update(Qt::InputMethodQueries queries) if (!d->inputItem) return; - QPlatformInputContext *ic = QGuiApplicationPrivate::platformIntegration()->inputContext(); + QPlatformInputContext *ic = d->platformInputContext(); if (ic) ic->update(queries); @@ -168,21 +168,24 @@ void QInputPanel::update(Qt::InputMethodQueries queries) void QInputPanel::reset() { - QPlatformInputContext *ic = QGuiApplicationPrivate::platformIntegration()->inputContext(); + Q_D(QInputPanel); + QPlatformInputContext *ic = d->platformInputContext(); if (ic) ic->reset(); } void QInputPanel::commit() { - QPlatformInputContext *ic = QGuiApplicationPrivate::platformIntegration()->inputContext(); + Q_D(QInputPanel); + QPlatformInputContext *ic = d->platformInputContext(); if (ic) ic->commit(); } void QInputPanel::invokeAction(Action a, int cursorPosition) { - QPlatformInputContext *ic = QGuiApplicationPrivate::platformIntegration()->inputContext(); + Q_D(QInputPanel); + QPlatformInputContext *ic = d->platformInputContext(); if (ic) ic->invokeAction(a, cursorPosition); } diff --git a/src/gui/kernel/qinputpanel_p.h b/src/gui/kernel/qinputpanel_p.h index f44b66832b..cf999cdd5f 100644 --- a/src/gui/kernel/qinputpanel_p.h +++ b/src/gui/kernel/qinputpanel_p.h @@ -46,6 +46,8 @@ #include #include #include +#include +#include QT_BEGIN_HEADER @@ -55,11 +57,21 @@ class QInputPanelPrivate : public QObjectPrivate { public: inline QInputPanelPrivate() - : visible(false) + : visible(false), testContext(0) {} + QPlatformInputContext *platformInputContext() const + { + return testContext ? testContext : QGuiApplicationPrivate::platformIntegration()->inputContext(); + } + static inline QInputPanelPrivate *get(QInputPanel *inputPanel) + { + return inputPanel->d_func(); + } + QTransform inputItemTransform; QWeakPointer inputItem; bool visible; + QPlatformInputContext *testContext; }; QT_END_NAMESPACE -- cgit v1.2.3