diff options
author | Laszlo Agocs <laszlo.agocs@theqtcompany.com> | 2016-04-05 15:24:53 +0000 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2016-04-05 15:24:53 +0000 |
commit | df5159a8a6b6bf585feb1473054dec2ed5ddb11a (patch) | |
tree | a56ad5c69e735eeeb1e93e01330ec2498f5ba497 /src/widgets/widgets/qtextedit.cpp | |
parent | 0683c9291f9c1ffe0625fdadee198840047f0e92 (diff) | |
parent | f2856875843efce9a00e90dad05bde358ab82197 (diff) |
Merge "Merge remote-tracking branch 'origin/5.7' into dev" into refs/staging/dev
Diffstat (limited to 'src/widgets/widgets/qtextedit.cpp')
-rw-r--r-- | src/widgets/widgets/qtextedit.cpp | 30 |
1 files changed, 14 insertions, 16 deletions
diff --git a/src/widgets/widgets/qtextedit.cpp b/src/widgets/widgets/qtextedit.cpp index 3f2e4728ed..1dd774cf7a 100644 --- a/src/widgets/widgets/qtextedit.cpp +++ b/src/widgets/widgets/qtextedit.cpp @@ -1727,24 +1727,22 @@ QVariant QTextEdit::inputMethodQuery(Qt::InputMethodQuery property) const QVariant QTextEdit::inputMethodQuery(Qt::InputMethodQuery query, QVariant argument) const { Q_D(const QTextEdit); - QVariant v; - switch (query) { - case Qt::ImHints: - v = QWidget::inputMethodQuery(query); - break; + if (query == Qt::ImHints) + return QWidget::inputMethodQuery(query); + const QVariant v = d->control->inputMethodQuery(query, argument); + const QPointF offset(-d->horizontalOffset(), -d->verticalOffset()); + switch (v.type()) { + case QVariant::RectF: + return v.toRectF().translated(offset); + case QVariant::PointF: + return v.toPointF() + offset; + case QVariant::Rect: + return v.toRect().translated(offset.toPoint()); + case QVariant::Point: + return v.toPoint() + offset.toPoint(); default: - v = d->control->inputMethodQuery(query, argument); - const QPoint offset(-d->horizontalOffset(), -d->verticalOffset()); - if (v.type() == QVariant::RectF) - v = v.toRectF().toRect().translated(offset); - else if (v.type() == QVariant::PointF) - v = v.toPointF().toPoint() + offset; - else if (v.type() == QVariant::Rect) - v = v.toRect().translated(offset); - else if (v.type() == QVariant::Point) - v = v.toPoint() + offset; + break; } - return v; } |