diff options
author | Frederik Gladhorn <frederik.gladhorn@digia.com> | 2013-01-23 22:12:54 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-01-23 22:12:54 +0100 |
commit | 7df08a8b63c8fc861a5e927eabf2405e1a2a01e1 (patch) | |
tree | 495ff2934465b02b01fc2ff694687344c909bf62 /src/plugins/platforms/cocoa/qcocoafiledialoghelper.mm | |
parent | 06e4b1cff4c469d2fc3afbfe7a6b1954fedc90ff (diff) | |
parent | c608ec825410a9287f544a2ae3ce8154424e767d (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.mm | 18 |
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]; } } |