Stop SettingTextField from setting values when getting/losing the focus

Fixes #2694
This commit is contained in:
fieldOfView 2017-10-30 15:31:14 +01:00
parent e6e61e9a3c
commit 8dfba9a318

View file

@ -11,6 +11,14 @@ SettingItem
id: base
property var focusItem: input
property string textBeforeEdit
property bool textHasChanged
onFocusReceived:
{
textHasChanged = false;
textBeforeEdit = focusItem.text;
}
contents: Rectangle
{
id: control
@ -115,12 +123,22 @@ SettingItem
Keys.onReleased:
{
propertyProvider.setPropertyValue("value", text)
if (text != textBeforeEdit)
{
textHasChanged = true;
}
if (textHasChanged)
{
propertyProvider.setPropertyValue("value", text)
}
}
onEditingFinished:
{
propertyProvider.setPropertyValue("value", text)
if (textHasChanged)
{
propertyProvider.setPropertyValue("value", text)
}
}
onActiveFocusChanged: