summaryrefslogtreecommitdiffstats
path: root/src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm
diff options
context:
space:
mode:
authorFrederik Gladhorn <frederik.gladhorn@digia.com>2013-01-23 22:12:54 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-01-23 22:12:54 +0100
commit7df08a8b63c8fc861a5e927eabf2405e1a2a01e1 (patch)
tree495ff2934465b02b01fc2ff694687344c909bf62 /src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm
parent06e4b1cff4c469d2fc3afbfe7a6b1954fedc90ff (diff)
parentc608ec825410a9287f544a2ae3ce8154424e767d (diff)
Merge "Merge remote-tracking branch 'origin/stable' into dev" into refs/staging/dev
Diffstat (limited to 'src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm')
-rw-r--r--src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm18
1 files changed, 12 insertions, 6 deletions
diff --git a/src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm b/src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm
index a159682ddb..d8bb72dd45 100644
--- a/src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm
+++ b/src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm
@@ -1,6 +1,6 @@
/****************************************************************************
**
-** Copyright (C) 2012 Digia Plc and/or its subsidiary(-ies).
+** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
** Contact: http://www.qt-project.org/legal
**
** This file is part of the QtGui module of the Qt Toolkit.
@@ -218,6 +218,8 @@ static QString strippedText(QString s)
*mCurrentSelection = QT_PREPEND_NAMESPACE(QCFString::toQString)([[mSavePanel URL] path]);
if ([mSavePanel respondsToSelector:@selector(close)])
[mSavePanel close];
+ if ([mSavePanel isSheet])
+ [NSApp endSheet: mSavePanel];
}
- (void)showModelessPanel
@@ -496,14 +498,18 @@ static QString strippedText(QString s)
[mPopUpButton setTarget:self];
[mPopUpButton setAction:@selector(filterChanged:)];
- QStringList *filters = mNameFilterDropDownList;
- if (filters->size() > 0){
+ if (mNameFilterDropDownList->size() > 0) {
+ int filterToUse = -1;
for (int i=0; i<mNameFilterDropDownList->size(); ++i) {
- QString filter = hideDetails ? [self removeExtensions:filters->at(i)] : filters->at(i);
+ QString currentFilter = mNameFilterDropDownList->at(i);
+ if (selectedFilter == currentFilter ||
+ (filterToUse == -1 && currentFilter.startsWith(selectedFilter)))
+ filterToUse = i;
+ QString filter = hideDetails ? [self removeExtensions:currentFilter] : currentFilter;
[mPopUpButton addItemWithTitle:QT_PREPEND_NAMESPACE(QCFString::toNSString)(filter)];
- if (filters->at(i).startsWith(selectedFilter))
- [mPopUpButton selectItemAtIndex:i];
}
+ if (filterToUse != -1)
+ [mPopUpButton selectItemAtIndex:filterToUse];
}
}