diff options
author | Doris Verria <doris.verria@qt.io> | 2024-05-06 17:52:24 +0200 |
---|---|---|
committer | Doris Verria <doris.verria@qt.io> | 2024-05-07 21:12:29 +0200 |
commit | 0678a8a00da586e78d464608e83e89b4df589485 (patch) | |
tree | a79872c0c559f6bfb6be9c8a29a08400cac643d0 | |
parent | c0c66a42ced590cadfb55efc82f80af5f035020e (diff) |
QWindowPrivate::setFocusToTarget: Add focusReason parameter
The focusReason is also important when setting focus to the target, so
ammend 8c44064f62b9e57dacdf1dbd8de57e07c938b9db and add this parameter
to the virtual method.
Change-Id: Id7800a366cbc1ce2ac26b3fec1e47ec9267a57bb
Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
-rw-r--r-- | src/gui/kernel/qwindow_p.h | 2 | ||||
-rw-r--r-- | src/widgets/kernel/qwidgetwindow.cpp | 4 | ||||
-rw-r--r-- | src/widgets/kernel/qwindowcontainer.cpp | 2 |
3 files changed, 4 insertions, 4 deletions
diff --git a/src/gui/kernel/qwindow_p.h b/src/gui/kernel/qwindow_p.h index f6c8aee9f6..40ab06af8b 100644 --- a/src/gui/kernel/qwindow_p.h +++ b/src/gui/kernel/qwindow_p.h @@ -84,7 +84,7 @@ public: Next, Prev }; - virtual void setFocusToTarget(QWindowPrivate::FocusTarget) {} + virtual void setFocusToTarget(FocusTarget, Qt::FocusReason) {} virtual QRectF closestAcceptableGeometry(const QRectF &rect) const; diff --git a/src/widgets/kernel/qwidgetwindow.cpp b/src/widgets/kernel/qwidgetwindow.cpp index c5b045c8db..e7f0a84004 100644 --- a/src/widgets/kernel/qwidgetwindow.cpp +++ b/src/widgets/kernel/qwidgetwindow.cpp @@ -77,7 +77,7 @@ public: widget->focusWidget()->clearFocus(); } - void setFocusToTarget(QWindowPrivate::FocusTarget target) override + void setFocusToTarget(FocusTarget target, Qt::FocusReason reason) override { Q_Q(QWidgetWindow); QWidget *widget = q->widget(); @@ -107,7 +107,7 @@ public: } if (newFocusWidget) - newFocusWidget->setFocus(); + newFocusWidget->setFocus(reason); } QRectF closestAcceptableGeometry(const QRectF &rect) const override; diff --git a/src/widgets/kernel/qwindowcontainer.cpp b/src/widgets/kernel/qwindowcontainer.cpp index 376a93c758..1aaf04af43 100644 --- a/src/widgets/kernel/qwindowcontainer.cpp +++ b/src/widgets/kernel/qwindowcontainer.cpp @@ -326,7 +326,7 @@ bool QWindowContainer::event(QEvent *e) target = QWindowPrivate::FocusTarget::First; else if (reason == Qt::BacktabFocusReason) target = QWindowPrivate::FocusTarget::Last; - qt_window_private(d->window)->setFocusToTarget(target); + qt_window_private(d->window)->setFocusToTarget(target, reason); d->window->requestActivate(); } } |