QML Перемещение курсора между MouseArea
Суть проблемы: есть две области MouseArea, когда я перемещаю курсор мыши между ними, они реагируют на его наличие, однако, если в одном из MouseArea была нажата кнопка мыши, то второй MouseArea перестаёт видеть, отслеживать положение курсора. Надеюсь я понятно объяснил.
Это происходит из-за того, что, после нажатия кнопки мыши, MouseArea, в котором находился курсор во время нажатия, "захватывает" все события мыши до тех пор, пока кнопка не будет отпущена пользователем.
Вопрос: как сделать так, чтоб когда курсор покинет область MouseArea, события мыши отвяжутся от этой MouseArea ? Чтоб когда убираешь курсор из MouseArea, read-only свойство pressed этой MouseArea становилось false вне зависимости от того, отпустил пользователь кнопку мыши, или нет.
Item {
anchors.fill: parent
Rectangle {
id: rect1
anchors.verticalCenter: parent.verticalCenter
anchors.right: parent.horizontalCenter
anchors.rightMargin: 25
width: 100
height: 100
color: 'green'
MouseArea {
id: rect1_Area
anchors.fill: rect1
hoverEnabled: true
onPressedChanged: {
console.log('rect1', (rect1_Area.pressed?'':'un') + 'pressed')
}
onContainsMouseChanged: {
console.log('rect1', (rect1_Area.containsMouse?'':'not ') + 'contain mouse')
}
}
}
Rectangle {
id: rect2
anchors.verticalCenter: parent.verticalCenter
anchors.left: parent.horizontalCenter
anchors.leftMargin: 25
width: 100
height: 100
color: 'red'
MouseArea {
id: rect2_Area
anchors.fill: rect2
hoverEnabled: true
onPressedChanged: {
console.log('rect2', (rect2_Area.pressed?'':'un') + 'pressed')
}
onContainsMouseChanged: {
console.log('rect2', (rect2_Area.containsMouse?'':'not ') + 'contain mouse')
}
}
}
}