Send QWindow::focusObjectChanged when clearing widget focus

We do this for QWidget::setFocus(), but were missing a call on clearing
the focus widget. Since QWidgetWindow::focusObject() will fall back to
returning itself if there is no focus widget, we need to pass the
result of window->focusObject() to the change signal instead of 0.

Change-Id: I52a5519a19bb20e74b4a7c2a1abc9d47e2ea1315
Reviewed-by: Jan Arve Sæther <jan-arve.saether@digia.com>
This commit is contained in:
Tor Arne Vestbø 2014-08-15 15:39:37 +02:00
parent f85f3acd78
commit 9aff2fbd86

View File

@ -6569,6 +6569,11 @@ void QWidget::clearFocus()
QAccessible::updateAccessibility(&event);
#endif
}
if (QTLWExtra *extra = window()->d_func()->maybeTopData()) {
if (extra->window)
emit extra->window->focusObjectChanged(extra->window->focusObject());
}
}
}