title: QML ListView scrolling does not produce any animation, when delegates have different width
body: <p>I am creating a <code>ListView</code> with horizontal orientation. The highlight is set to one fixed position of the view so that the list elements scroll through the visible area when I increment/decrement the current Item. Here is my code for the view:</p>
  
  <pre><code>ListView {
      anchors.fill: parent
      model: ListModel{
          ListElement{name:"x"}
          ListElement{name:"y"}
          ListElement{name:"z"}
      }
      delegate:
          Rectangle {
          property int viewW: ListView.view.width
          property bool isCurrent: ListView.isCurrentItem
          width: ListView.isCurrent? viewW * 0.4 : viewW * 0.3
          Text {
              anchors.fill: parent
              text: name
          }
      }
  
  
      orientation: Qt.Horizontal
      highlight: Rectangle {color: "transparent"}
      preferredHighlightBegin: 0
      preferredHighlightEnd: width*0.4
      highlightRangeMode: ListView.StrictlyEnforceRange
  }
  </code></pre>
  
  <p>I want the <code>delegate</code> of the current item to have a greater width than all the other elements. However, when the width of all delegates is not identical, the list scrolling animation (e.g. you can see elements moving to next position, instead of just appearing on the new position) does not apply any more.</p>
  
  <p>How can I have a <code>ListView</code> with the current element showing a different width than the rest of the other elements, while still being able to have the scrolling animations?</p>