Fix focus issues after dismissal of consecutive dialogs (like Add PC -> Add PC error)

This commit is contained in:
Cameron Gutman 2019-03-31 19:32:17 -07:00
commit 0aa87aacc6
3 changed files with 14 additions and 16 deletions

View file

@ -2,27 +2,16 @@ import QtQuick 2.0
import QtQuick.Controls 2.2
Dialog {
property Item originalFocusItem
parent: overlay
x: Math.round((parent.width - width) / 2)
y: Math.round((parent.height - height) / 2)
onAboutToShow: {
originalFocusItem = window.activeFocusItem
}
onOpened: {
// Force focus on the dialog to ensure keyboard navigation works
forceActiveFocus()
}
onClosed: {
onAboutToHide: {
// We must force focus back to the last item for platforms without
// support for more than one active window like Steam Link. If
// we don't, gamepad and keyboard navigation will break after a
// dialog appears.
originalFocusItem.forceActiveFocus()
stackView.forceActiveFocus()
}
}