From 6058f632df6226a27f8a21b21ed7ac252ddab1b9 Mon Sep 17 00:00:00 2001 From: Lipu Fei Date: Fri, 16 Mar 2018 11:05:13 +0100 Subject: [PATCH] Fix Enter key handling on material management page --- resources/qml/Preferences/MaterialView.qml | 11 +++++++++++ resources/qml/Preferences/ReadOnlySpinBox.qml | 2 ++ resources/qml/Preferences/ReadOnlyTextField.qml | 2 ++ 3 files changed, 15 insertions(+) diff --git a/resources/qml/Preferences/MaterialView.qml b/resources/qml/Preferences/MaterialView.qml index 50dc6b65a4..ffc4eaba3a 100644 --- a/resources/qml/Preferences/MaterialView.qml +++ b/resources/qml/Preferences/MaterialView.qml @@ -99,6 +99,7 @@ TabView property var new_diameter_value: null; property var old_diameter_value: null; property var old_approximate_diameter_value: null; + property bool keyPressed: false onYes: { @@ -112,6 +113,16 @@ TabView properties.diameter = old_diameter_value; diameterSpinBox.value = properties.diameter; } + + onVisibilityChanged: + { + if (!visible && !keyPressed) + { + // If the user closes this dialog without clicking on any button, it's the same as clicking "No". + no(); + } + keyPressed = false; + } } Label { width: scrollView.columnWidth; height: parent.rowHeight; verticalAlignment: Qt.AlignVCenter; text: catalog.i18nc("@label", "Display Name") } diff --git a/resources/qml/Preferences/ReadOnlySpinBox.qml b/resources/qml/Preferences/ReadOnlySpinBox.qml index 5d0666d306..1bbef82b1e 100644 --- a/resources/qml/Preferences/ReadOnlySpinBox.qml +++ b/resources/qml/Preferences/ReadOnlySpinBox.qml @@ -34,6 +34,8 @@ Item anchors.fill: parent onEditingFinished: base.editingFinished() + Keys.onEnterPressed: base.editingFinished() + Keys.onReturnPressed: base.editingFinished() } Label diff --git a/resources/qml/Preferences/ReadOnlyTextField.qml b/resources/qml/Preferences/ReadOnlyTextField.qml index 9407475a9b..38d07d7d6a 100644 --- a/resources/qml/Preferences/ReadOnlyTextField.qml +++ b/resources/qml/Preferences/ReadOnlyTextField.qml @@ -29,6 +29,8 @@ Item anchors.fill: parent onEditingFinished: base.editingFinished() + Keys.onEnterPressed: base.editingFinished() + Keys.onReturnPressed: base.editingFinished() } Label