summaryrefslogtreecommitdiffstats
path: root/src/gui/dialogs
diff options
context:
space:
mode:
authorErik Verbruggen <erik.verbruggen@digia.com>2014-09-16 13:39:25 +0200
committerErik Verbruggen <erik.verbruggen@digia.com>2014-09-16 13:57:35 +0200
commit922c87a3b8ab16b18b2f04c114f6d20ba12e4eb9 (patch)
treeea67de8de6119befb06cf3ce16b8f129af56bc3f /src/gui/dialogs
parent5f0f5dd371cb5fbd1ae1cb8f7b6f03c0109d2d6c (diff)
OSX: make QFileDialog::getSaveFileName honor the initial file name.
Since OSX 10.9 the NSSavePanel will call panelSelectionDidChange on the delegate when the selection is changed programmatically, even when the panel is not (yet) visible. This overwrites the selected file name with the default "Untitled" before we'd set it in runApplicationModalPanel. The fix is to check if panelSelectionDidChange is called before it is shown. Change-Id: I9ad6cd3afddc0aac35baebab31fd85cd7bf3f9e9 Task-number: QTBUG-36212 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
Diffstat (limited to 'src/gui/dialogs')
-rw-r--r--src/gui/dialogs/qfiledialog_mac.mm2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/gui/dialogs/qfiledialog_mac.mm b/src/gui/dialogs/qfiledialog_mac.mm
index da15a61d1c..0ba4e4a7d7 100644
--- a/src/gui/dialogs/qfiledialog_mac.mm
+++ b/src/gui/dialogs/qfiledialog_mac.mm
@@ -459,7 +459,7 @@ QT_USE_NAMESPACE
- (void)panelSelectionDidChange:(id)sender
{
Q_UNUSED(sender);
- if (mPriv) {
+ if (mPriv && [mSavePanel isVisible]) {
QString selection = QT_PREPEND_NAMESPACE(qt_mac_NSStringToQString([mSavePanel filename]));
if (selection != mCurrentSelection) {
*mCurrentSelection = selection;