import QtQuick 2.15 import QtQuick.Controls 2.15 Item { id: root signal update() property string text: qsTr("Release to update") property real sensivity: 50.0 property alias enabled: connections.enabled property bool triggered: false property bool trigger: parent.contentY < -1 * sensivity property bool atStart: parent.contentY === 0 Label { id: label anchors.horizontalCenter: root.horizontalCenter visible: root.trigger text: root.text } Connections { id: connections target: root.parent function onContentYChanged() { if (root.trigger) { root.triggered = true } if (root.atStart && root.triggered) { root.update() root.triggered = false } } } }