Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/owncloud/client.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorHannah von Reth <hannah.vonreth@owncloud.com>2021-05-11 12:15:35 +0300
committerHannah von Reth <vonreth@kde.org>2021-05-26 17:57:02 +0300
commitf9dbdd4420a21eaba24f0c70d9bf702e346bde06 (patch)
tree8964d438858311be50f99115e6bb3b6ca22e1da6 /src
parentf53341b1bbcfbf49ad66728355629b74c165e5df (diff)
Sort account list
Diffstat (limited to 'src')
-rw-r--r--src/gui/accountmanager.cpp11
-rw-r--r--src/gui/accountmanager.h5
-rw-r--r--src/gui/activitywidget.cpp7
-rw-r--r--src/gui/protocolwidget.cpp7
4 files changed, 18 insertions, 12 deletions
diff --git a/src/gui/accountmanager.cpp b/src/gui/accountmanager.cpp
index 5883a8f31..b1b6a405c 100644
--- a/src/gui/accountmanager.cpp
+++ b/src/gui/accountmanager.cpp
@@ -227,6 +227,17 @@ void AccountManager::saveAccountState(AccountState *a)
qCDebug(lcAccountManager) << "Saved account state settings, status:" << settings->status();
}
+QStringList AccountManager::accountNames() const
+{
+ QStringList accounts;
+ accounts.reserve(AccountManager::instance()->accounts().size());
+ for (const auto &a : AccountManager::instance()->accounts()) {
+ accounts << a->account()->displayName();
+ }
+ std::sort(accounts.begin(), accounts.end());
+ return accounts;
+}
+
void AccountManager::saveAccountHelper(Account *acc, QSettings &settings, bool saveCredentials)
{
settings.setValue(QLatin1String(versionC), maxAccountVersion);
diff --git a/src/gui/accountmanager.h b/src/gui/accountmanager.h
index e7a77f5f9..41232127e 100644
--- a/src/gui/accountmanager.h
+++ b/src/gui/accountmanager.h
@@ -88,6 +88,11 @@ public:
*/
static void backwardMigrationSettingsKeys(QStringList *deleteKeys, QStringList *ignoreKeys);
+ /**
+ * Returns a sorted list of displayNames
+ */
+ QStringList accountNames() const;
+
private:
// saving and loading Account to settings
void saveAccountHelper(Account *account, QSettings &settings, bool saveCredentials = true);
diff --git a/src/gui/activitywidget.cpp b/src/gui/activitywidget.cpp
index 4f0071c5e..466f3a4d5 100644
--- a/src/gui/activitywidget.cpp
+++ b/src/gui/activitywidget.cpp
@@ -109,12 +109,7 @@ ActivityWidget::ActivityWidget(QWidget *parent)
connect(_ui->_activityList, &QListView::customContextMenuRequested, this, &ActivityWidget::slotItemContextMenu);
_ui->_activityList->horizontalHeader()->setContextMenuPolicy(Qt::CustomContextMenu);
connect(_ui->_activityList->horizontalHeader(), &QListView::customContextMenuRequested, this, [this] {
- QStringList accounts;
- accounts.reserve(AccountManager::instance()->accounts().size());
- for (const auto &a : AccountManager::instance()->accounts()) {
- accounts << a->account()->displayName();
- }
- Models::displayFilterDialog(accounts, _sortModel, static_cast<int>(ActivityListModel::ActivityRole::Account), Qt::DisplayRole, this);
+ Models::displayFilterDialog(AccountManager::instance()->accountNames().toList(), _sortModel, static_cast<int>(ActivityListModel::ActivityRole::Account), Qt::DisplayRole, this);
});
connect(&_removeTimer, &QTimer::timeout, this, &ActivityWidget::slotCheckToCleanWidgets);
diff --git a/src/gui/protocolwidget.cpp b/src/gui/protocolwidget.cpp
index 4ea8cb9f6..f74a42003 100644
--- a/src/gui/protocolwidget.cpp
+++ b/src/gui/protocolwidget.cpp
@@ -80,12 +80,7 @@ ProtocolWidget::~ProtocolWidget()
void ProtocolWidget::showHeaderContextMenu(QWidget *parent, QSortFilterProxyModel *model)
{
- QStringList accounts;
- accounts.reserve(AccountManager::instance()->accounts().size());
- for (const auto &a : AccountManager::instance()->accounts()) {
- accounts << a->account()->displayName();
- }
- Models::displayFilterDialog(accounts, model, static_cast<int>(ProtocolItemModel::ProtocolItemRole::Account), Qt::DisplayRole, parent);
+ Models::displayFilterDialog(AccountManager::instance()->accountNames().toList(), model, static_cast<int>(ProtocolItemModel::ProtocolItemRole::Account), Qt::DisplayRole, parent);
}
void ProtocolWidget::showContextMenu(QWidget *parent, ProtocolItemModel *model, const QModelIndexList &items)