summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDoris Verria <doris.verria@qt.io>2024-05-06 17:52:24 +0200
committerDoris Verria <doris.verria@qt.io>2024-05-07 21:12:29 +0200
commit0678a8a00da586e78d464608e83e89b4df589485 (patch)
treea79872c0c559f6bfb6be9c8a29a08400cac643d0
parentc0c66a42ced590cadfb55efc82f80af5f035020e (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.h2
-rw-r--r--src/widgets/kernel/qwidgetwindow.cpp4
-rw-r--r--src/widgets/kernel/qwindowcontainer.cpp2
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();
}
}