Hello community, here is the log from the commit of package plasma5-integration for openSUSE:Factory checked in at 2017-06-10 17:55:44 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/plasma5-integration (Old) and /work/SRC/openSUSE:Factory/.plasma5-integration.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "plasma5-integration" Sat Jun 10 17:55:44 2017 rev:24 rq:501493 version:5.10.1 Changes: -------- --- /work/SRC/openSUSE:Factory/plasma5-integration/plasma5-integration.changes 2017-06-01 16:26:40.518385332 +0200 +++ /work/SRC/openSUSE:Factory/.plasma5-integration.new/plasma5-integration.changes 2017-06-10 17:55:47.839192789 +0200 @@ -1,0 +2,11 @@ +Tue Jun 6 17:19:56 CEST 2017 - fab...@ritter-vogt.de + +- Update to 5.10.1 + * New bugfix release + * For more details please see: + * https://www.kde.org/announcements/plasma-5.10.1.php +- Changes since 5.10.0: + * Don't ignore initially selected mime type filter + * Make sure we always set a default mime filter in save mode + +------------------------------------------------------------------- Old: ---- plasma-integration-5.10.0.tar.xz New: ---- plasma-integration-5.10.1.tar.xz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ plasma5-integration.spec ++++++ --- /var/tmp/diff_new_pack.OAh11B/_old 2017-06-10 17:55:48.351120504 +0200 +++ /var/tmp/diff_new_pack.OAh11B/_new 2017-06-10 17:55:48.355119939 +0200 @@ -18,7 +18,7 @@ %bcond_without lang Name: plasma5-integration -Version: 5.10.0 +Version: 5.10.1 Release: 0 # Full Plasma 5 version (e.g. 5.8.95) %{!?_plasma5_bugfix: %global _plasma5_bugfix %{version}} @@ -28,7 +28,7 @@ License: GPL-2.0+ Group: System/GUI/KDE Url: http://www.kde.org -Source: plasma-integration-%{version}.tar.xz +Source: http://download.kde.org/stable/plasma/%{version}/plasma-integration-%{version}.tar.xz BuildRequires: extra-cmake-modules >= 5.17.0 BuildRequires: kf5-filesystem BuildRequires: libQt5Gui-private-headers-devel >= 5.5.0 ++++++ plasma-integration-5.10.0.tar.xz -> plasma-integration-5.10.1.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/plasma-integration-5.10.0/CMakeLists.txt new/plasma-integration-5.10.1/CMakeLists.txt --- old/plasma-integration-5.10.0/CMakeLists.txt 2017-05-26 11:06:56.000000000 +0200 +++ new/plasma-integration-5.10.1/CMakeLists.txt 2017-06-06 13:51:00.000000000 +0200 @@ -1,7 +1,7 @@ cmake_minimum_required(VERSION 2.8.12) project(PlasmaIntegration) -set(PROJECT_VERSION "5.10.0") +set(PROJECT_VERSION "5.10.1") set(PROJECT_VERSION_MAJOR 5) include(FeatureSummary) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/plasma-integration-5.10.0/autotests/kfiledialog_unittest.cpp new/plasma-integration-5.10.1/autotests/kfiledialog_unittest.cpp --- old/plasma-integration-5.10.0/autotests/kfiledialog_unittest.cpp 2017-05-26 11:06:27.000000000 +0200 +++ new/plasma-integration-5.10.1/autotests/kfiledialog_unittest.cpp 2017-06-06 13:50:27.000000000 +0200 @@ -104,13 +104,23 @@ QFETCH(QStringList, mimeTypeFilters); dialog.setMimeTypeFilters(mimeTypeFilters); - dialog.show(); QFETCH(QString, targetMimeTypeFilter); dialog.selectMimeTypeFilter(targetMimeTypeFilter); + dialog.show(); QCOMPARE(dialog.selectedMimeTypeFilter(), targetMimeTypeFilter); } + + void testFallbackOnFirstFilterInSaveMode() + { + QFileDialog dialog; + dialog.setAcceptMode(QFileDialog::AcceptSave); + dialog.setMimeTypeFilters({QStringLiteral("application/json"), QStringLiteral("application/zip")}); + dialog.show(); + QCOMPARE(dialog.selectedMimeTypeFilter(), QStringLiteral("application/json")); + } + #endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/plasma-integration-5.10.0/src/platformtheme/kdeplatformfiledialoghelper.cpp new/plasma-integration-5.10.1/src/platformtheme/kdeplatformfiledialoghelper.cpp --- old/plasma-integration-5.10.0/src/platformtheme/kdeplatformfiledialoghelper.cpp 2017-05-26 11:06:27.000000000 +0200 +++ new/plasma-integration-5.10.1/src/platformtheme/kdeplatformfiledialoghelper.cpp 2017-06-06 13:50:27.000000000 +0200 @@ -298,7 +298,16 @@ const QStringList mimeFilters = options()->mimeTypeFilters(); const QStringList nameFilters = options()->nameFilters(); if (!mimeFilters.isEmpty()) { - dialog->m_fileWidget->setMimeFilter(mimeFilters); + QString defaultMimeFilter; + if (options()->acceptMode() == QFileDialogOptions::AcceptSave) { +#if QT_VERSION >= QT_VERSION_CHECK(5, 9, 0) + defaultMimeFilter = options()->initiallySelectedMimeTypeFilter(); +#endif + if (defaultMimeFilter.isEmpty()) { + defaultMimeFilter = mimeFilters.at(0); + } + } + dialog->m_fileWidget->setMimeFilter(mimeFilters, defaultMimeFilter); if ( mimeFilters.contains( QStringLiteral("inode/directory") ) ) dialog->m_fileWidget->setMode( dialog->m_fileWidget->mode() | KFile::Directory ); @@ -306,9 +315,17 @@ dialog->m_fileWidget->setFilter(qt2KdeFilter(nameFilters)); } +#if QT_VERSION >= QT_VERSION_CHECK(5, 9, 0) + if (!options()->initiallySelectedMimeTypeFilter().isEmpty()) { + selectMimeTypeFilter(options()->initiallySelectedMimeTypeFilter()); + } else if (!options()->initiallySelectedNameFilter().isEmpty()) { + selectNameFilter(options()->initiallySelectedNameFilter()); + } +#else if (!options()->initiallySelectedNameFilter().isEmpty()) { selectNameFilter(options()->initiallySelectedNameFilter()); } +#endif // overwrite option if (options()->testOption(QFileDialogOptions::FileDialogOption::DontConfirmOverwrite)) { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/plasma-integration-5.10.0/tests/qfiledialogtest.cpp new/plasma-integration-5.10.1/tests/qfiledialogtest.cpp --- old/plasma-integration-5.10.0/tests/qfiledialogtest.cpp 2017-05-26 11:06:27.000000000 +0200 +++ new/plasma-integration-5.10.1/tests/qfiledialogtest.cpp 2017-06-06 13:50:27.000000000 +0200 @@ -37,6 +37,7 @@ parser.addOption(QCommandLineOption(QStringList(QStringLiteral("nameFilter")), QStringLiteral("Dialog nameFilter, e. g. 'cppfiles (*.cpp *.h *.hpp)', can be specified multiple times"), QStringLiteral("nameFilter"), QStringLiteral("Everything (*)"))); parser.addOption(QCommandLineOption(QStringList(QStringLiteral("mimeTypeFilter")), QStringLiteral("Dialog mimeTypeFilter, e. g. 'application/json', can be specified multiple times"), QStringLiteral("mimeTypeFilter"))); parser.addOption(QCommandLineOption(QStringList(QStringLiteral("selectNameFilter")), QStringLiteral("Initially selected nameFilter"), QStringLiteral("selectNameFilter"))); + parser.addOption(QCommandLineOption(QStringList(QStringLiteral("selectMimeTypeFilter")), QStringLiteral("Initially selected mimeTypeFilter"), QStringLiteral("selectMimeTypeFilter"))); parser.addOption(QCommandLineOption(QStringList(QStringLiteral("selectFile")), QStringLiteral("Initially selected file"), QStringLiteral("filename"))); parser.addOption(QCommandLineOption(QStringList(QStringLiteral("selectDirectory")), QStringLiteral("Initially selected directory"), QStringLiteral("dirname"))); parser.addOption(QCommandLineOption(QStringList(QStringLiteral("modal")), QStringLiteral("Test modal dialog"), QStringLiteral("modality"), QStringLiteral("on"))); @@ -86,8 +87,11 @@ } QString selectNameFilter = parser.value(QStringLiteral("selectNameFilter")); + QString selectMimeTypeFilter = parser.value(QStringLiteral("selectMimeTypeFilter")); if (!selectNameFilter.isEmpty()) { dialog.selectNameFilter(selectNameFilter); + } else if (!selectMimeTypeFilter.isEmpty()) { + dialog.selectMimeTypeFilter(selectMimeTypeFilter); } if (parser.value(QStringLiteral("confirmOverwrite")) == QStringLiteral("off")) {