From 4df16fa5017e549c6d0a60b23216607d752d4c28 Mon Sep 17 00:00:00 2001 From: Martin van Zijl Date: Fri, 2 Jun 2023 05:42:25 +1200 Subject: [PATCH] Remember sort order in Autotype popup dialog Fixes #1684. --- src/autotype/AutoTypeSelectDialog.cpp | 6 ++++++ src/core/Config.cpp | 2 ++ src/core/Config.h | 2 ++ 3 files changed, 10 insertions(+) diff --git a/src/autotype/AutoTypeSelectDialog.cpp b/src/autotype/AutoTypeSelectDialog.cpp index aef2b8c30..94c002c1a 100644 --- a/src/autotype/AutoTypeSelectDialog.cpp +++ b/src/autotype/AutoTypeSelectDialog.cpp @@ -89,6 +89,10 @@ AutoTypeSelectDialog::AutoTypeSelectDialog(QWidget* parent) connect(m_ui->action, &QToolButton::clicked, this, &AutoTypeSelectDialog::activateCurrentMatch); connect(m_ui->cancelButton, SIGNAL(clicked()), SLOT(reject())); + + auto sortColumn = config()->get(Config::AutoTypeDialogSortColumn).toInt(); + auto sortOrder = config()->get(Config::AutoTypeDialogSortOrder).toInt(); + m_ui->view->sortByColumn(sortColumn, sortOrder == 0 ? Qt::AscendingOrder : Qt::DescendingOrder); } // Required for QScopedPointer @@ -409,6 +413,8 @@ void AutoTypeSelectDialog::showEvent(QShowEvent* event) void AutoTypeSelectDialog::hideEvent(QHideEvent* event) { config()->set(Config::GUI_AutoTypeSelectDialogSize, size()); + config()->set(Config::AutoTypeDialogSortColumn, m_ui->view->horizontalHeader()->sortIndicatorSection()); + config()->set(Config::AutoTypeDialogSortOrder, m_ui->view->horizontalHeader()->sortIndicatorOrder()); if (!m_accepted) { emit rejected(); } diff --git a/src/core/Config.cpp b/src/core/Config.cpp index 93110db8d..5c9ad986b 100644 --- a/src/core/Config.cpp +++ b/src/core/Config.cpp @@ -77,6 +77,8 @@ static const QHash configStrings = { {Config::AutoTypeDelay,{QS("AutoTypeDelay"), Roaming, 25}}, {Config::AutoTypeStartDelay,{QS("AutoTypeStartDelay"), Roaming, 500}}, {Config::AutoTypeHideExpiredEntry,{QS("AutoTypeHideExpiredEntry"), Roaming, false}}, + {Config::AutoTypeDialogSortColumn,{QS("AutoTypeDialogSortColumn"), Roaming, 0}}, + {Config::AutoTypeDialogSortOrder,{QS("AutoTypeDialogSortOrder"), Roaming, Qt::AscendingOrder}}, {Config::GlobalAutoTypeKey,{QS("GlobalAutoTypeKey"), Roaming, 0}}, {Config::GlobalAutoTypeModifiers,{QS("GlobalAutoTypeModifiers"), Roaming, 0}}, {Config::GlobalAutoTypeRetypeTime,{QS("GlobalAutoTypeRetypeTime"), Roaming, 15}}, diff --git a/src/core/Config.h b/src/core/Config.h index 745e0bb75..5c4370382 100644 --- a/src/core/Config.h +++ b/src/core/Config.h @@ -59,6 +59,8 @@ public: AutoTypeDelay, AutoTypeStartDelay, AutoTypeHideExpiredEntry, + AutoTypeDialogSortColumn, + AutoTypeDialogSortOrder, GlobalAutoTypeKey, GlobalAutoTypeModifiers, GlobalAutoTypeRetypeTime,