summaryrefslogtreecommitdiff
path: root/view/kernelcache
diff options
context:
space:
mode:
authorMark Rowe <mark@vector35.com>2025-09-25 11:46:09 -0700
committerMark Rowe <mark@vector35.com>2025-09-25 14:42:01 -0700
commit43e85c45ab971e01716675a50d5a65717b830c4e (patch)
tree6362e768e6766631cc11d49d0d88837f3dc7cbf1 /view/kernelcache
parent8be4f37a4064df7eb5ce19389d6d8a35d67c54f8 (diff)
Sort table views in the shared cache / kernel cache triage views by address by default
The table views previously visually suggested they were being sorted by address, but in practice they were not sorted until the user set an explicit sort order by clicking on a column header.
Diffstat (limited to 'view/kernelcache')
-rw-r--r--view/kernelcache/ui/kctriage.cpp5
-rw-r--r--view/kernelcache/ui/symboltable.cpp4
2 files changed, 9 insertions, 0 deletions
diff --git a/view/kernelcache/ui/kctriage.cpp b/view/kernelcache/ui/kctriage.cpp
index 57392e19..baae517c 100644
--- a/view/kernelcache/ui/kctriage.cpp
+++ b/view/kernelcache/ui/kctriage.cpp
@@ -298,6 +298,7 @@ QWidget* KCTriageView::initImageTable()
m_imageTable->setSelectionBehavior(QAbstractItemView::SelectRows);
m_imageTable->setSelectionMode(QAbstractItemView::ExtendedSelection);
+ m_imageTable->sortByColumn(0, Qt::AscendingOrder);
m_imageTable->setSortingEnabled(true);
m_imageTable->verticalHeader()->setVisible(false);
@@ -454,4 +455,8 @@ void KCTriageView::RefreshData()
setImageLoaded(loadedImg.headerVirtualAddress);
m_symbolTable->populateSymbols(*m_data);
+
+ // Reapply the current sort after repopulating the model
+ // TODO: This should use `QSortFilterProxyModel`, but that's a bigger change.
+ m_imageTable->setSortingEnabled(true);
}
diff --git a/view/kernelcache/ui/symboltable.cpp b/view/kernelcache/ui/symboltable.cpp
index 5c86b3b4..90d0d18b 100644
--- a/view/kernelcache/ui/symboltable.cpp
+++ b/view/kernelcache/ui/symboltable.cpp
@@ -196,6 +196,10 @@ void SymbolTableView::populateSymbols(BinaryView &view)
{
auto symbols = watcher->result();
m_model->updateSymbols(std::move(symbols));
+
+ // Reapply the current sort after repopulating the model
+ // TODO: The model should use `QSortFilterProxyModel`, but that's a bigger change.
+ setSortingEnabled(true);
}
});
QFuture<SymbolList> future = QtConcurrent::run([controller]() {