From f46707b2f8a0afe28b9dc64091b592b8158222e6 Mon Sep 17 00:00:00 2001 From: Pacho Ramos Date: Sun, 14 Feb 2021 17:21:30 +0100 Subject: x11-themes/QGnomePlatform: Bump to 0.7.0 Package-Manager: Portage-3.0.14, Repoman-3.0.2 Signed-off-by: Pacho Ramos --- x11-themes/QGnomePlatform/Manifest | 1 + .../QGnomePlatform/QGnomePlatform-0.7.0.ebuild | 39 ++++++++++++++ ...latform-0.7.0-qxdgdesktopfiledialog-fixes.patch | 63 ++++++++++++++++++++++ 3 files changed, 103 insertions(+) create mode 100644 x11-themes/QGnomePlatform/QGnomePlatform-0.7.0.ebuild create mode 100644 x11-themes/QGnomePlatform/files/QGnomePlatform-0.7.0-qxdgdesktopfiledialog-fixes.patch (limited to 'x11-themes') diff --git a/x11-themes/QGnomePlatform/Manifest b/x11-themes/QGnomePlatform/Manifest index 04d6d68baaf1..09244b813bc5 100644 --- a/x11-themes/QGnomePlatform/Manifest +++ b/x11-themes/QGnomePlatform/Manifest @@ -1 +1,2 @@ DIST QGnomePlatform-0.6.1.tar.gz 28996 BLAKE2B 3d0da37fcc8e85bd59263dffb19865666d25dd50d2c1e00b4d6358d745eb7079f415058ffb75a8228c9c7ed956003a656b3e10a3467d9fc9dcd5eee2c14bf7cd SHA512 5e0bab45a8ff4c56e6e34d636ed719ce1a087f116942dd356253403d4be40aac348ccbdbfc917f65f6cc4df8619e1031734f0a46a36d4d9b7bb4838ded61570c +DIST QGnomePlatform-0.7.0.tar.gz 33398 BLAKE2B 28cd8c070465074f137c669c6bf5835ced26e53ebb2ae4fe96f5bf9ddabd5df6adf947499d51fa8700d5a77a35f5715711f4ccc117fe1613ec70cbfacde501fd SHA512 9bca42a79e536ec2ff03ff2ed89dac572ea15d8a1a7fc72ac564208a82dd5ac442f1a3eb4ef54ac466a754fbc66f078105ef9bea5b0206d20be63c0f942da243 diff --git a/x11-themes/QGnomePlatform/QGnomePlatform-0.7.0.ebuild b/x11-themes/QGnomePlatform/QGnomePlatform-0.7.0.ebuild new file mode 100644 index 000000000000..26e756b1b51e --- /dev/null +++ b/x11-themes/QGnomePlatform/QGnomePlatform-0.7.0.ebuild @@ -0,0 +1,39 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +inherit qmake-utils + +DESCRIPTION="A Qt Platform Theme aimed to accommodate GNOME settings" +HOMEPAGE="https://github.com/FedoraQt/QGnomePlatform" +SRC_URI="https://github.com/FedoraQt/QGnomePlatform/archive/${PV}.tar.gz -> ${P}.tar.gz" + +KEYWORDS="~amd64 ~ppc64 ~x86" +LICENSE="LGPL-2.1" +SLOT="0" +IUSE="" + +RDEPEND=" + dev-qt/qtdbus:5= + >=dev-qt/qtwidgets-5.12:5= + dev-qt/qtwayland:5= + dev-qt/qtx11extras:5= + sys-apps/xdg-desktop-portal + x11-libs/gtk+:3[X] + >=x11-themes/adwaita-qt-1.2.0 +" +DEPEND="${RDEPEND}" +BDEPEND="${RDEPEND}" + +PATCHES=( + # From Fedora, fixed in next version + "${FILESDIR}/${P}-qxdgdesktopfiledialog-fixes.patch" +) + +src_configure() { + eqmake5 +} + +src_install() { + INSTALL_ROOT="${D}" default +} diff --git a/x11-themes/QGnomePlatform/files/QGnomePlatform-0.7.0-qxdgdesktopfiledialog-fixes.patch b/x11-themes/QGnomePlatform/files/QGnomePlatform-0.7.0-qxdgdesktopfiledialog-fixes.patch new file mode 100644 index 000000000000..db43a69d0b17 --- /dev/null +++ b/x11-themes/QGnomePlatform/files/QGnomePlatform-0.7.0-qxdgdesktopfiledialog-fixes.patch @@ -0,0 +1,63 @@ +From e244e003b68f660dbb0795d18ad70e8a11689712 Mon Sep 17 00:00:00 2001 +From: Jan Grulich +Date: Mon, 4 Jan 2021 11:43:36 +0100 +Subject: QXdgDesktopPortalFileDialog: backport upstream fixes + + +diff --git a/common/qxdgdesktopportalfiledialog.cpp b/common/qxdgdesktopportalfiledialog.cpp +index 7502a6e..c4dc2da 100644 +--- a/common/qxdgdesktopportalfiledialog.cpp ++++ b/common/qxdgdesktopportalfiledialog.cpp +@@ -210,7 +210,7 @@ void QXdgDesktopPortalFileDialog::openPortal() + qDBusRegisterMetaType(); + + FilterList filterList; +- Filter* selectedFilter = nullptr; ++ auto selectedFilterIndex = filterList.size() - 1; + + d->userVisibleToNameFilter.clear(); + +@@ -236,7 +236,7 @@ void QXdgDesktopPortalFileDialog::openPortal() + filterList << filter; + + if (!d->selectedMimeTypeFilter.isEmpty() && d->selectedMimeTypeFilter == mimeTypefilter) +- selectedFilter = &filterList.last(); ++ selectedFilterIndex = filterList.size() - 1; + } + } else if (!d->nameFilters.isEmpty()) { + for (const QString &nameFilter : d->nameFilters) { +@@ -246,7 +246,12 @@ void QXdgDesktopPortalFileDialog::openPortal() + QRegularExpressionMatch match = regexp.match(nameFilter); + if (match.hasMatch()) { + QString userVisibleName = match.captured(1); +- QStringList filterStrings = match.captured(2).split(QLatin1Char(' '), QString::SkipEmptyParts); ++ QStringList filterStrings = match.captured(2).split(QLatin1Char(' '), Qt::SkipEmptyParts); ++ ++ if (filterStrings.isEmpty()) { ++ qWarning() << "Filter " << userVisibleName << " is empty and will be ignored."; ++ continue; ++ } + + FilterConditionList filterConditions; + for (const QString &filterString : filterStrings) { +@@ -265,7 +270,7 @@ void QXdgDesktopPortalFileDialog::openPortal() + d->userVisibleToNameFilter.insert(userVisibleName, nameFilter); + + if (!d->selectedNameFilter.isEmpty() && d->selectedNameFilter == nameFilter) +- selectedFilter = &filterList.last(); ++ selectedFilterIndex = filterList.size() - 1; + } + } + } +@@ -273,9 +278,8 @@ void QXdgDesktopPortalFileDialog::openPortal() + if (!filterList.isEmpty()) + options.insert(QLatin1String("filters"), QVariant::fromValue(filterList)); + +- if (selectedFilter) { +- options.insert(QLatin1String("current_filter"), QVariant::fromValue(*selectedFilter)); +- } ++ if (selectedFilterIndex != -1) ++ options.insert(QLatin1String("current_filter"), QVariant::fromValue(filterList[selectedFilterIndex])); + + options.insert(QLatin1String("handle_token"), QStringLiteral("qt%1").arg(QRandomGenerator::global()->generate())); + -- cgit v1.2.3-65-gdbad