summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTor Arne Vestbø <tor.arne.vestbo@qt.io>2021-01-25 13:26:31 +0100
committerQt Cherry-pick Bot <cherrypick_bot@qt-project.org>2021-01-26 15:56:09 +0000
commit257caeec0ab2280124640e195b561435bfee4cb3 (patch)
tree003f550686dd150d06921511a2564745bb1cc668
parenta6a8a4e06e435885a86516a63745f743944187ae (diff)
macOS: Don't restrict non-modal file dialogs to open-dialogs only
None of the APIs used for non-modal operation require NSOpenPanel. Change-Id: I7ea49a8dad6e724a8a0d4321ea443d4cdcc5a6b1 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io> (cherry picked from commit d7c07578bc02be1f0c3c3c3c3d64b020f2ec50ac) Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r--src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm30
1 files changed, 14 insertions, 16 deletions
diff --git a/src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm b/src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm
index 541eabd3ed..e0fc7dd9ce 100644
--- a/src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm
+++ b/src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm
@@ -191,22 +191,20 @@ static QString strippedText(QString s)
- (void)showModelessPanel
{
- if (mOpenPanel){
- QFileInfo info(*mCurrentSelection);
- NSString *filepath = info.filePath().toNSString();
- NSURL *url = [NSURL fileURLWithPath:filepath isDirectory:info.isDir()];
- bool selectable = (mOptions->acceptMode() == QFileDialogOptions::AcceptSave)
- || [self panel:mOpenPanel shouldEnableURL:url];
-
- [self updateProperties];
- [mSavePanel setNameFieldStringValue:selectable ? info.fileName().toNSString() : @""];
-
- [mOpenPanel beginWithCompletionHandler:^(NSInteger result){
- mReturnCode = result;
- if (mHelper)
- mHelper->QNSOpenSavePanelDelegate_panelClosed(result == NSModalResponseOK);
- }];
- }
+ QFileInfo info(*mCurrentSelection);
+ NSString *filepath = info.filePath().toNSString();
+ NSURL *url = [NSURL fileURLWithPath:filepath isDirectory:info.isDir()];
+ bool selectable = (mOptions->acceptMode() == QFileDialogOptions::AcceptSave)
+ || [self panel:mSavePanel shouldEnableURL:url];
+
+ [self updateProperties];
+ [mSavePanel setNameFieldStringValue:selectable ? info.fileName().toNSString() : @""];
+
+ [mSavePanel beginWithCompletionHandler:^(NSInteger result){
+ mReturnCode = result;
+ if (mHelper)
+ mHelper->QNSOpenSavePanelDelegate_panelClosed(result == NSModalResponseOK);
+ }];
}
- (BOOL)runApplicationModalPanel