since qtbase commit ebef2ad1360c80ad62de5f4a1c4e7e4051725c1c
"Make the empty Q_ASSERT still check its argument for validity" the
build shall fail.
REVIEW: 121562
FIXED-IN: 5.7.0
BUG: 342872
QMetaObject::invokeMethod calls QMetaObject::indexForMethod internally,
which is rather expensive. So look up the method once, and invoke it
via QMetaMethod directly.
REVIEW: 122109
The upstream commit f96baeb75fc36a41d2b08f880536cee5a8041e79
with the title:
QSortFilterProxyModel: honor the roles parameter of dataChanged
changes the signature of the private _q_sourceDataChanged slot
of QSortFilterProxyModel. I talked to Peppe and he told me to just
use the new signature from Qt 5.5 and onwards. Note that the vector
of roles was present in the dataChanged signal from 5.0 onwards
already. It was simply ignored by QSFPM so far.
Indeed, this patch fixes the following crash on Kate startup for me:
QMetaObject::invokeMethod: QMetaObject::invokeMethod: No such method
KRecursiveFilterProxyModel::_q_sourceDataChanged(QModelIndex,QModelIndex)
Candidates are:
_q_sourceDataChanged(QModelIndex,QModelIndex,QVector<int>)
ASSERT: "success" in file
kf5/src/frameworks/kitemmodels/src/krecursivefilterproxymodel.cpp, line 55
REVIEW: 121931
It looks like Qt4 emitted layoutChanged in circumstances where Qt5 emits
rowsMoved. This could be used to optimize things, but for now we just
act the same way in either case (rebuilding the mapping).
REVIEW: 117777
modeltest.(cpp|h) are taken from Qt 5.3. The license header has been
trimmed to clarify which license we are using it under, and to reflect
the fact we use a COPYING.LIB file instead of LICENSE.LGPL.
REVIEW: 116096