diff options
Diffstat (limited to 'src/imports/controls/material/SpinBox.qml')
-rw-r--r-- | src/imports/controls/material/SpinBox.qml | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/imports/controls/material/SpinBox.qml b/src/imports/controls/material/SpinBox.qml index f8fc84c8..1851a1f8 100644 --- a/src/imports/controls/material/SpinBox.qml +++ b/src/imports/controls/material/SpinBox.qml @@ -74,6 +74,31 @@ T.SpinBox { selectedTextColor: control.Material.primaryTextColor horizontalAlignment: Qt.AlignHCenter verticalAlignment: Qt.AlignVCenter + cursorDelegate: Rectangle { + id: cursor + color: control.Material.accentColor + width: 2 + visible: control.activeFocus && contentItem.selectionStart === contentItem.selectionEnd + + Connections { + target: contentItem + onCursorPositionChanged: { + // keep a moving cursor visible + cursor.opacity = 1 + timer.restart() + } + } + + Timer { + id: timer + running: control.activeFocus + repeat: true + interval: Qt.styleHints.cursorFlashTime + onTriggered: cursor.opacity = !cursor.opacity ? 1 : 0 + // force the cursor visible when gaining focus + onRunningChanged: cursor.opacity = 1 + } + } readOnly: !control.editable validator: control.validator |