diff options
author | Dirk Hohndel <dirk@hohndel.org> | 2018-10-20 12:04:00 -0400 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2018-10-23 22:45:30 +0100 |
commit | cf3fcc53b61b1545cf18beff267f7157f9dcd10f (patch) | |
tree | 7555a50e2bf1bc6d83668bbacda2236465fb36c7 /mobile-widgets/qml | |
parent | 84822ebd2ff6eed032f3fd0822ba922811f1133e (diff) | |
download | subsurface-cf3fcc53b61b1545cf18beff267f7157f9dcd10f.tar.gz |
Mobile/filtering: implement the filter update through a thread
It's important to disconnect the model from the ListView, otherwise the update in a
different thread will fail.
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'mobile-widgets/qml')
-rw-r--r-- | mobile-widgets/qml/DiveList.qml | 7 | ||||
-rw-r--r-- | mobile-widgets/qml/main.qml | 2 |
2 files changed, 7 insertions, 2 deletions
diff --git a/mobile-widgets/qml/DiveList.qml b/mobile-widgets/qml/DiveList.qml index f158aaff1..639979a97 100644 --- a/mobile-widgets/qml/DiveList.qml +++ b/mobile-widgets/qml/DiveList.qml @@ -411,8 +411,7 @@ Kirigami.ScrollablePage { text: "" placeholderText: "Full text search" onAccepted: { - rootItem.filterPattern = text - diveModel.setFilter(text) + manager.setFilter(text) console.log("back from setFilter") } onEnabledChanged: { @@ -451,6 +450,10 @@ Kirigami.ScrollablePage { section.criteria: ViewSection.FullString section.delegate: tripHeading section.labelPositioning: ViewSection.CurrentLabelAtStart | ViewSection.InlineLabels + onModelChanged: { + numShownText = diveModel.shown() + console.log("update number shown to " + numShownText) + } Connections { target: detailsWindow onCurrentIndexChanged: diveListView.currentIndex = detailsWindow.currentIndex diff --git a/mobile-widgets/qml/main.qml b/mobile-widgets/qml/main.qml index bf0830f46..d2988f115 100644 --- a/mobile-widgets/qml/main.qml +++ b/mobile-widgets/qml/main.qml @@ -64,10 +64,12 @@ Kirigami.ApplicationWindow { function showBusy() { busy.running = true + diveList.diveListModel = null } function hideBusy() { busy.running = false + diveList.diveListModel = diveModel } function returnTopPage() { |