[network/ruqola] src/core/model: Use SortFilterProxyModelBase here

Laurent Montel <[email protected]>
Newsgroups gmane.comp.kde.cvs
Message-ID <[email protected]>
Git commit 321a4e6bd2a4ebfcb8acac2c724bd9bb804bc8cc by Laurent Montel.
Committed on 27/07/2026 at 21:18.
Pushed by mlaurent into branch 'master'.

Use SortFilterProxyModelBase here

M  +2    -11   src/core/model/usersforroomfilterproxymodel.cpp
M  +2    -4    src/core/model/usersforroomfilterproxymodel.h

https://invent.kde.org/network/ruqola/-/commit/321a4e6bd2a4ebfcb8acac2c724bd9bb804bc8cc

diff --git a/src/core/model/usersforroomfilterproxymodel.cpp b/src/core/model/usersforroomfilterproxymodel.cpp
index 37bcfcc0ce..4137a68856 100644
--- a/src/core/model/usersforroomfilterproxymodel.cpp
+++ b/src/core/model/usersforroomfilterproxymodel.cpp
@@ -10,7 +10,7 @@
 
 using namespace Qt::Literals::StringLiterals;
 UsersForRoomFilterProxyModel::UsersForRoomFilterProxyModel(QObject *parent)
-    : QSortFilterProxyModel(parent)
+    : SortFilterProxyModelBase(parent)
 {
     setFilterCaseSensitivity(Qt::CaseInsensitive);
     setSortRole(UsersForRoomModel::UsersForRoomRoles::UserName);
@@ -26,15 +26,6 @@ void UsersForRoomFilterProxyModel::clearFilter()
     mStatusType = UsersForRoomFilterProxyModel::FilterUserType::All;
 }
 
-void UsersForRoomFilterProxyModel::setFilterString(const QString &string)
-{
-    if (mFilterString != string) {
-        beginFilterChange();
-        mFilterString = string;
-        endFilterChange(QSortFilterProxyModel::Direction::Rows);
-    }
-}
-
 bool UsersForRoomFilterProxyModel::hasFullList() const
 {
     return static_cast<UsersForRoomModel *>(sourceModel())->hasFullList();
@@ -82,7 +73,7 @@ bool UsersForRoomFilterProxyModel::filterAcceptsRow(int source_row, const QModel
 {
     const QModelIndex sourceIndex = sourceModel()->index(source_row, 0, source_parent);
     auto match = [&](int role) {
-        return mFilterString.isEmpty() || sourceIndex.data(role).toString().contains(mFilterString, Qt::CaseInsensitive);
+        return mFilterString.isEmpty() || contains(sourceIndex.data(role).toString());
     };
     switch (mStatusType) {
     case UsersForRoomFilterProxyModel::FilterUserType::All:
diff --git a/src/core/model/usersforroomfilterproxymodel.h b/src/core/model/usersforroomfilterproxymodel.h
index b6b5a334aa..31837e75fd 100644
--- a/src/core/model/usersforroomfilterproxymodel.h
+++ b/src/core/model/usersforroomfilterproxymodel.h
@@ -7,9 +7,9 @@
 #pragma once
 
 #include "libruqolacore_export.h"
-#include <QSortFilterProxyModel>
+#include "sortfilterproxymodelbase.h"
 
-class LIBRUQOLACORE_EXPORT UsersForRoomFilterProxyModel : public QSortFilterProxyModel
+class LIBRUQOLACORE_EXPORT UsersForRoomFilterProxyModel : public SortFilterProxyModelBase
 {
     Q_OBJECT
 public:
@@ -25,7 +25,6 @@ public:
 
     explicit UsersForRoomFilterProxyModel(QObject *parent = nullptr);
     ~UsersForRoomFilterProxyModel() override;
-    void setFilterString(const QString &string);
 
     [[nodiscard]] bool hasFullList() const;
     [[nodiscard]] bool loadMoreUsersInProgress() const;
@@ -46,5 +45,4 @@ protected:
 
 private:
     UsersForRoomFilterProxyModel::FilterUserType mStatusType = UsersForRoomFilterProxyModel::FilterUserType::All;
-    QString mFilterString;
 };
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.