----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://git.reviewboard.kde.org/r/115478/#review52605 -----------------------------------------------------------
This review has been submitted with commit d460f4cc4d8d23ff6e8a55f39b83ae045e5fc05e by Dominik Haumann to branch master. - Commit Hook On March 9, 2014, 6:11 p.m., Dominik Haumann wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://git.reviewboard.kde.org/r/115478/ > ----------------------------------------------------------- > > (Updated March 9, 2014, 6:11 p.m.) > > > Review request for KDE Frameworks, Àlex Fiestas and Gregor Mi. > > > Repository: frameworkintegration > > > Description > ------- > > The following QPA integration does not work as expected: > > QStringList nameFilterList = QStringList() << "c (*.cpp)" << "h (*.h)"; > dialog.setNameFilters(nameFilterList); > > QString selectNameFilter("h (*.h)"); > dialog.selectNameFilter(selectNameFilter); > // QCOMPARE(dialog.selectedNameFilter(), selectNameFilter); // (1) always > fails, no matter what > > dialog.show(); > QCOMPARE(dialog.selectedNameFilter(), selectNameFilter); // (2) currently > also fails, Qt patch required > > The problem is described in detail in: > http://mail.kde.org/pipermail/kde-frameworks-devel/2014-February/010691.html > > > The Qt patches that make (2) work are as follows: > > diff --git a/src/widgets/dialogs/qfiledialog.cpp > b/src/widgets/dialogs/qfiledialog.cpp > index da026d2..72b2310 100644 > --- a/src/widgets/dialogs/qfiledialog.cpp > +++ b/src/widgets/dialogs/qfiledialog.cpp > @@ -627,7 +627,8 @@ void > QFileDialogPrivate::helperPrepareShow(QPlatformDialogHelper *) > options->setInitialDirectory(directory.exists() ? > > QUrl::fromLocalFile(directory.absolutePath()) : > QUrl()); > - options->setInitiallySelectedNameFilter(q->selectedNameFilter()); > + if (options->initiallySelectedNameFilter().isEmpty()) > + options->setInitiallySelectedNameFilter(q->selectedNameFilter()); > if (options->initiallySelectedFiles().isEmpty()) > options->setInitiallySelectedFiles(userSelectedFiles()); > } > @@ -1447,6 +1448,7 @@ void QFileDialog::selectNameFilter(const QString > &filter) > { > Q_D(QFileDialog); > if (!d->usingWidgets()) { > + d->options->setInitiallySelectedNameFilter(filter); > d->selectNameFilter_sys(filter); > return; > } > > However, the QCOMPARE in (1) is still an open issue. And no fix in sight... > > Ok to commit this to frameworksintegration (and therewith make it unstable?) > > > Diffs > ----- > > autotests/CMakeLists.txt f76ab15 > autotests/kfiledialog_unittest.cpp PRE-CREATION > src/platformtheme/kdeplatformfiledialoghelper.cpp c82b821 > > Diff: https://git.reviewboard.kde.org/r/115478/diff/ > > > Testing > ------- > > The attached unit test currently fails due to a bug in the Qt QPA. > > With the Qt patch above, (2) in the unit test passes, so one is able to call > QFileDialog::selectNameFilter(). > However, (1) remains broken. > > > Thanks, > > Dominik Haumann > >
_______________________________________________ Kde-frameworks-devel mailing list Kde-frameworks-devel@kde.org https://mail.kde.org/mailman/listinfo/kde-frameworks-devel