From c09cf578bd7267b867326101cd2d0f39e7c814fe Mon Sep 17 00:00:00 2001 From: David Faure Date: Mon, 09 Sep 2019 18:12:26 +0200 Subject: [PATCH] QWidget::setFocusProxy: adjust focus widget properly My commit 3e7463411e adjusted the focus widget by setting QApplicationPrivate::focus_widget directly, while there is a method for doing this properly, including setFocus_sys() and emitting signals. Fixes: QTBUG-77364 Change-Id: I218acf7a9de39173d282ced46def4f65594f80b4 --- diff --git a/src/widgets/kernel/qwidget.cpp b/src/widgets/kernel/qwidget.cpp index cf5a81c..6889c2e 100644 --- qtbase/src/widgets/kernel/qwidget.cpp +++ qtbase/src/widgets/kernel/qwidget.cpp @@ -6204,7 +6204,7 @@ if (changingAppFocusWidget) { QWidget *newDeepestFocusProxy = d_func()->deepestFocusProxy(); - QApplicationPrivate::focus_widget = newDeepestFocusProxy ? newDeepestFocusProxy : this; + QApplicationPrivate::setFocusWidget(newDeepestFocusProxy ? newDeepestFocusProxy : this, Qt::NoFocusReason); } }