From cf8dc020ffad8908acc5983d75643189b73fb0b9 Mon Sep 17 00:00:00 2001 From: Richard Moe Gustavsen Date: Wed, 26 Nov 2014 13:50:41 +0100 Subject: [PATCH] Widgets, iOS: don't tell the input panel to hide on focus out MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit On iOS, autoSIP is handled by the platform plugin. We therefore avoid letting widgets tell the input panel to hide on focus out so we can gain better control over this from the plugin. Note that we could also set QApplicationPrivate::autoSipEnabled to false and achieve the same. But since autoSIP is logically set on iOS, it's better to report it as set in case the app asks. Change-Id: I96c68bc446a1e299fd57afe03a9e273491df08a7 Reviewed-by: Tor Arne Vestbø --- src/widgets/kernel/qwidget.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/widgets/kernel/qwidget.cpp b/src/widgets/kernel/qwidget.cpp index 78eabf3c4c..c362530264 100644 --- a/src/widgets/kernel/qwidget.cpp +++ b/src/widgets/kernel/qwidget.cpp @@ -9408,9 +9408,11 @@ void QWidget::focusOutEvent(QFocusEvent *) if (focusPolicy() != Qt::NoFocus || !isWindow()) update(); - // automatically hide the SIP +#ifndef Q_OS_IOS + // FIXME: revisit autoSIP logic, QTBUG-42906 if (qApp->autoSipEnabled() && testAttribute(Qt::WA_InputMethodEnabled)) qApp->inputMethod()->hide(); +#endif } /*!