diff --git a/wallpapers/image/slidefiltermodel.cpp b/wallpapers/image/slidefiltermodel.cpp --- a/wallpapers/image/slidefiltermodel.cpp +++ b/wallpapers/image/slidefiltermodel.cpp @@ -59,6 +59,7 @@ const int old_count = m_randomOrder.size(); m_randomOrder.resize(this->sourceModel()->rowCount()); std::iota(m_randomOrder.begin() + old_count, m_randomOrder.end(), old_count); + std::random_shuffle(m_randomOrder.begin() + old_count, m_randomOrder.end()); }); connect(sourceModel, &QAbstractItemModel::rowsRemoved, this, [this] { if (m_SortingMode != Image::Random || m_usedInConfig) {