Je souhaite utiliser un PinchArea sur un ListView afin de zoomer ou dézoomer celui-ci.
Voici le code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
PinchArea{
        anchors.fill: parent
        pinch.target: listview
        pinch.minimumScale: 0.1
        pinch.maximumScale: 5
}
ListView {
    id: listview
    anchors.fill: parent
    anchors.margins: 5
    model: xmlModel
    delegate: monDelegate
}
Cela fonctionne plutôt bien mise à part le fait que le PinchArea à "deux doigts" ne fonctionne pas si je le fais sur le ListView.

En plus clair : il semblerait que le toucher à deux doigts rentre en conflit avec la fonctionnalité flickable du ListView. Du coup, il est nécessaire de passer à 3 doigts.

Dans le cas ou je dézoome au max le ListView, je me retrouve, avec mon simple code, avec une zone blanche tout autour de celui-ci... du coup je n'ai plus ce problème "d’interférence".
Autre exemple illustrant ce problème d'interférence : si je passe la property interactive de mon ListView à False, je n'ai plus le problème ... mais du coup je perds tout l'intérêt du composant .

Étant donné ceci, j'ai tenté un passage par MultiTouchArea afin de capter le nombre de touche simultanée sur l'écran et ainsi inhiber la property interactive. Ça ça fonctionne mais par contre le PinchArea non ...

Je bloque, je bloque ...

Auriez-vous une idée ?

++


J