summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/plugins/platforms/qnx/qqnxfiledialoghelper.h3
-rw-r--r--src/plugins/platforms/qnx/qqnxfiledialoghelper_bb10.cpp14
2 files changed, 12 insertions, 5 deletions
diff --git a/src/plugins/platforms/qnx/qqnxfiledialoghelper.h b/src/plugins/platforms/qnx/qqnxfiledialoghelper.h
index e7c68f6ff5..c2033c16d3 100644
--- a/src/plugins/platforms/qnx/qqnxfiledialoghelper.h
+++ b/src/plugins/platforms/qnx/qqnxfiledialoghelper.h
@@ -87,6 +87,9 @@ public:
Q_SIGNALS:
void dialogClosed();
+private Q_SLOTS:
+ void emitSignals();
+
private:
void setNameFilter(const QString &filter);
void setNameFilters(const QStringList &filters);
diff --git a/src/plugins/platforms/qnx/qqnxfiledialoghelper_bb10.cpp b/src/plugins/platforms/qnx/qqnxfiledialoghelper_bb10.cpp
index dc841eb1a9..e3b1e2dc4d 100644
--- a/src/plugins/platforms/qnx/qqnxfiledialoghelper_bb10.cpp
+++ b/src/plugins/platforms/qnx/qqnxfiledialoghelper_bb10.cpp
@@ -68,6 +68,7 @@ QQnxFileDialogHelper::QQnxFileDialogHelper(const QQnxIntegration *integration)
m_selectedFilter(),
m_result(QPlatformDialogHelper::Rejected)
{
+ connect(m_dialog, &QQnxFilePicker::closed, this, &QQnxFileDialogHelper::emitSignals);
}
QQnxFileDialogHelper::~QQnxFileDialogHelper()
@@ -85,11 +86,6 @@ void QQnxFileDialogHelper::exec()
QEventLoop loop;
connect(m_dialog, SIGNAL(closed()), &loop, SLOT(quit()));
loop.exec();
-
- if (m_dialog->selectedFiles().isEmpty())
- Q_EMIT reject();
- else
- Q_EMIT accept();
}
bool QQnxFileDialogHelper::show(Qt::WindowFlags flags, Qt::WindowModality modality, QWindow *parent)
@@ -197,6 +193,14 @@ QString QQnxFileDialogHelper::selectedNameFilter() const
return m_selectedFilter;
}
+void QQnxFileDialogHelper::emitSignals()
+{
+ if (m_dialog->selectedFiles().isEmpty())
+ Q_EMIT reject();
+ else
+ Q_EMIT accept();
+}
+
void QQnxFileDialogHelper::setNameFilter(const QString &filter)
{
qFileDialogHelperDebug() << Q_FUNC_INFO << "filter =" << filter;