Warning, /graphics/krita/3rdparty/ext_qt/0016-Android-Fix-native-fileDialog-not-waiting-for-user-s.patch is written in an unsupported language. File is not indexed.

0001 From 412becd601fea5f8bdd8ff52f921ad823b3396cc Mon Sep 17 00:00:00 2001
0002 From: Assam Boudjelthia <assam.boudjelthia@qt.io>
0003 Date: Fri, 31 Jan 2020 17:04:54 +0200
0004 Subject: [PATCH 16/46] Android: Fix native fileDialog not waiting for user
0005  selection
0006 
0007 Add an event loop to wait for user file selection in native fileDialog
0008 
0009 Task-number: QTBUG-77214
0010 Change-Id: I3d97d6c3f46cf2a8ed0ee6f98e555e8d62e12cc3
0011 Reviewed-by: Ville Voutilainen <ville.voutilainen@qt.io>
0012 Reviewed-by: Andy Shaw <andy.shaw@qt.io>
0013 ---
0014  .../platforms/android/qandroidplatformfiledialoghelper.cpp     | 3 +++
0015  .../platforms/android/qandroidplatformfiledialoghelper.h       | 2 ++
0016  2 files changed, 5 insertions(+)
0017 
0018 diff --git a/src/plugins/platforms/android/qandroidplatformfiledialoghelper.cpp b/src/plugins/platforms/android/qandroidplatformfiledialoghelper.cpp
0019 index 7585b7eb95..fb979ab6cc 100644
0020 --- a/src/plugins/platforms/android/qandroidplatformfiledialoghelper.cpp
0021 +++ b/src/plugins/platforms/android/qandroidplatformfiledialoghelper.cpp
0022 @@ -100,10 +100,13 @@ bool QAndroidPlatformFileDialogHelper::show(Qt::WindowFlags windowFlags, Qt::Win
0023  
0024  void QAndroidPlatformFileDialogHelper::exec()
0025  {
0026 +    m_eventLoop.exec(QEventLoop::DialogExec);
0027  }
0028  
0029  void QAndroidPlatformFileDialogHelper::hide()
0030  {
0031 +    if (m_eventLoop.isRunning())
0032 +        m_eventLoop.exit();
0033      QtAndroidPrivate::unregisterActivityResultListener(this);
0034  }
0035  
0036 diff --git a/src/plugins/platforms/android/qandroidplatformfiledialoghelper.h b/src/plugins/platforms/android/qandroidplatformfiledialoghelper.h
0037 index e445aa2fef..5cd26af7c9 100644
0038 --- a/src/plugins/platforms/android/qandroidplatformfiledialoghelper.h
0039 +++ b/src/plugins/platforms/android/qandroidplatformfiledialoghelper.h
0040 @@ -41,6 +41,7 @@
0041  #define QANDROIDPLATFORMFILEDIALOGHELPER_H
0042  
0043  #include <jni.h>
0044 +#include <QEventLoop>
0045  #include <qpa/qplatformdialoghelper.h>
0046  #include <QtCore/private/qjnihelpers_p.h>
0047  
0048 @@ -72,6 +73,7 @@ public:
0049      bool handleActivityResult(jint requestCode, jint resultCode, jobject data) override;
0050  
0051  private:
0052 +    QEventLoop m_eventLoop;
0053      QUrl m_selectedFile;
0054  };
0055  
0056 -- 
0057 2.33.0
0058