From 96537c10b6d68e0f5122a19ce81cd8dfe508e27e Mon Sep 17 00:00:00 2001 From: Vincent Texier <vit@free.fr> Date: Thu, 4 Jan 2018 15:17:52 +0100 Subject: [PATCH] Fix QAsyncFileDialog crash only for linux platform #620 Normal Qfiledialog is ok, but async Qfiledialog does not work on linux platform if DontUseNativeDialog=True --- src/sakia/gui/widgets/dialogs.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/sakia/gui/widgets/dialogs.py b/src/sakia/gui/widgets/dialogs.py index 8ffd0fb5..529f7cc5 100644 --- a/src/sakia/gui/widgets/dialogs.py +++ b/src/sakia/gui/widgets/dialogs.py @@ -1,3 +1,4 @@ +import sys from PyQt5.QtWidgets import QMessageBox, QFileDialog import asyncio @@ -13,7 +14,9 @@ class QAsyncFileDialog: @staticmethod async def get_save_filename(parent, title, url, filtr): dialog = QFileDialog(parent, title, url, filtr) - #dialog.setOption(QFileDialog.DontUseNativeDialog, True) + # Fix linux crash if not native QFileDialog is async... + if sys.platform != 'linux': + dialog.setOption(QFileDialog.DontUseNativeDialog, True) dialog.setAcceptMode(QFileDialog.AcceptSave) result = await dialog_async_exec(dialog) if result == QFileDialog.AcceptSave: -- GitLab