diff --git a/applets/kicker/plugin/runnermatchesmodel.cpp b/applets/kicker/plugin/runnermatchesmodel.cpp --- a/applets/kicker/plugin/runnermatchesmodel.cpp +++ b/applets/kicker/plugin/runnermatchesmodel.cpp @@ -222,11 +222,14 @@ for (int row = 0; row < ceiling; ++row) { if (!(m_matches.at(row) == matches.at(row))) { emitDataChange = true; - - break; + m_matches[row] = matches.at(row); } } + if (emitDataChange) { + emit dataChanged(index(0, 0), index(ceiling - 1, 0)); + } + if (newCount > oldCount) { beginInsertRows(QModelIndex(), oldCount, newCount - 1); @@ -241,12 +244,6 @@ endRemoveRows(); } - if (emitDataChange) { - m_matches = matches; - - emit dataChanged(index(0, 0), index(ceiling - 1, 0)); - } - if (emitCountChange) { emit countChanged(); }