diff options
Diffstat (limited to 'src/quickdialogs/quickdialogsquickimpl/qquickfontdialogimpl.cpp')
| -rw-r--r-- | src/quickdialogs/quickdialogsquickimpl/qquickfontdialogimpl.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/quickdialogs/quickdialogsquickimpl/qquickfontdialogimpl.cpp b/src/quickdialogs/quickdialogsquickimpl/qquickfontdialogimpl.cpp index 960f8785ea..6ec6382a2d 100644 --- a/src/quickdialogs/quickdialogsquickimpl/qquickfontdialogimpl.cpp +++ b/src/quickdialogs/quickdialogsquickimpl/qquickfontdialogimpl.cpp @@ -147,6 +147,18 @@ void QQuickFontDialogImpl::focusOutEvent(QFocusEvent *event) attached->clearSearch(); } +void QQuickFontDialogImpl::itemChange(QQuickItem::ItemChange change, const QQuickItem::ItemChangeData &data) +{ + Q_D(QQuickFontDialogImpl); + QQuickDialog::itemChange(change, data); + + if (change != QQuickItem::ItemVisibleHasChanged || !isComponentComplete() || !data.boolValue) + return; + + if (QQuickFontDialogImplAttached *attached = d->attachedOrWarn(); attached && attached->buttonBox()) + attached->buttonBox()->forceActiveFocus(Qt::OtherFocusReason); +} + QQuickFontDialogImplAttached::QQuickFontDialogImplAttached(QObject *parent) : QObject(*(new QQuickFontDialogImplAttachedPrivate), parent), m_writingSystem(QFontDatabase::Any), |
