Hi, I am currently trying to optimize my Listview for performance. I already removed most of the bottlenecks by following the great recommendations at: http://doc.qt.io/qt-5/qtquick-performance.html
However, there is one problem I don't how to solve. It's about this code part: ListView{ clip: true property real flickTabBarTreshold; Component.onCompleted: { flickTabBarTreshold = (2/3) * maximumFlickVelocity; } onVerticalVelocityChanged: { //when user scrolls fast enough up, show the tab bar //and the "back to top" button if(verticalVelocity < -flickTabBarTreshold) { backToTopButton.visible = true; tabBar.show(); } //when user scrolls fast enough down hide "back to top" button //and the tab bar if(verticalVelocity > flickTabBarTreshold){ backToTopButton.visible = false; tabBar.hide(); } //always disable "back to top button" when top reached if(indexAt(contentX, contentY) === 0) backToTopButton.visible = false; } } This part is one of the biggest performance bottlenecks at the moment (as it gets called a lot of times) and has a significant impact on the scrolling behavior (lagging). My idea was to put that code somehow in my C++ Listmodel and emit only a signal when something actually changed. For the last part //always disable "back to top button" when top reachedif(indexAt(contentX, contentY) === 0) backToTopButton.visible = false; I think it should be possible to check that in the QVariant <http://doc.qt.io/qt-5/qvariant.html> QAbstractItemModel::data(const QModelIndex <http://doc.qt.io/qt-5/qmodelindex.html> &*index*, int *role* = Qt::DisplayRole) const method. When index.row() === 0, I a signal will be emitted. In QML I am connecting on that signal and execute backToTopButton.visible = false; I haven't tested it yet, but I think it should work. For the other two conditions however, I am a little bit clueless. Does anyone of you guys maybe have an idea on how to improve that? Any help is really appreciated. Thanks, Bernhard
_______________________________________________ Development mailing list Development@qt-project.org http://lists.qt-project.org/mailman/listinfo/development