diff options
Diffstat (limited to 'mobile-widgets/qmlmanager.cpp')
-rw-r--r-- | mobile-widgets/qmlmanager.cpp | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/mobile-widgets/qmlmanager.cpp b/mobile-widgets/qmlmanager.cpp index c5603d434..009b1b4db 100644 --- a/mobile-widgets/qmlmanager.cpp +++ b/mobile-widgets/qmlmanager.cpp @@ -15,6 +15,8 @@ #include <QDateTime> #include <QClipboard> #include <QFile> +#include <QtConcurrent> +#include <QFuture> #include <QBluetoothLocalDevice> @@ -1844,6 +1846,17 @@ void QMLManager::showDownloadPage(QString deviceString) emit pluggedInDeviceNameChanged(); } +void QMLManager::setFilter(const QString filterText) +{ + // show that we are doing something, then do something in another thread in order not to block the UI + QMetaObject::invokeMethod(qmlWindow, "showBusy"); + QtConcurrent::run(QThreadPool::globalInstance(), + [=]{ + dlSortModel->setFilter(filterText); + QMetaObject::invokeMethod(qmlWindow, "hideBusy"); + }); +} + #if defined(Q_OS_ANDROID) // implemented in core/android.cpp void checkPendingIntents(); |