diff --git a/interface/resources/qml/dialogs/FileDialog.qml b/interface/resources/qml/dialogs/FileDialog.qml index b9633104d5..7b1a177c86 100644 --- a/interface/resources/qml/dialogs/FileDialog.qml +++ b/interface/resources/qml/dialogs/FileDialog.qml @@ -70,7 +70,15 @@ ModalWindow { signal selectedFile(var file); signal canceled(); - + signal selected(int button); + function click(button) { + clickedButton = button; + selected(button); + destroy(); + } + + property int clickedButton: OriginalDialogs.StandardButton.NoButton; + Component.onCompleted: { console.log("Helper " + helper + " drives " + drives); @@ -628,7 +636,10 @@ ModalWindow { case Qt.Key_Backtab: event.accepted = false; break; - + case Qt.Key_Escape: + event.accepted = true; + root.click(OriginalDialogs.StandardButton.Cancel); + break; default: if (addToPrefix(event)) { event.accepted = true @@ -793,7 +804,11 @@ ModalWindow { case Qt.Key_Home: event.accepted = d.navigateHome(); break; - - } + + case Qt.Key_Escape: + event.accepted = true; + root.click(OriginalDialogs.StandardButton.Cancel); + break; + } } }