diff options
author | Alexis Menard <alexis.menard@nokia.com> | 2010-04-29 06:34:25 (GMT) |
---|---|---|
committer | Alexis Menard <alexis.menard@nokia.com> | 2010-04-29 06:38:33 (GMT) |
commit | 69efa1c869694666c66375179b43e2569cf2772b (patch) | |
tree | fdbdb3e901c37e69b0cd78351ef9989764fd4336 /src/gui/kernel/qwidget.cpp | |
parent | 4eb2e50b97a9933ab249517aa42cce9b3b4115e2 (diff) | |
download | Qt-69efa1c869694666c66375179b43e2569cf2772b.zip Qt-69efa1c869694666c66375179b43e2569cf2772b.tar.gz Qt-69efa1c869694666c66375179b43e2569cf2772b.tar.bz2 |
Update the input method sensitivity in case of complex widgets in QGraphicsProxyWidget.
In case of a complex widget embedded in a proxy, we need to update the
input method acceptance whenever the focus changes inside the proxy.
Task-number:QTBUG-8847
Reviewed-by:janarve
Diffstat (limited to 'src/gui/kernel/qwidget.cpp')
-rw-r--r-- | src/gui/kernel/qwidget.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/gui/kernel/qwidget.cpp b/src/gui/kernel/qwidget.cpp index 20d1d30..60f38f2 100644 --- a/src/gui/kernel/qwidget.cpp +++ b/src/gui/kernel/qwidget.cpp @@ -6232,6 +6232,12 @@ void QWidget::setFocus(Qt::FocusReason reason) QApplication::sendEvent(that->style(), &event); } if (!isHidden()) { +#ifndef QT_NO_GRAPHICSVIEW + // Update proxy state + if (QWExtra *topData = window()->d_func()->extra) + if (topData->proxyWidget && topData->proxyWidget->hasFocus()) + topData->proxyWidget->d_func()->updateProxyInputMethodAcceptanceFromWidget(); +#endif // Send event to self QFocusEvent event(QEvent::FocusIn, reason); QPointer<QWidget> that = f; |