summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-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();
}
}