summaryrefslogtreecommitdiff
path: root/kde-frameworks
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-10-03 17:49:12 +0100
committerV3n3RiX <venerix@koprulu.sector>2023-10-03 17:49:12 +0100
commitc99c2410831577bef101e22948e954f85f56cba1 (patch)
tree3a441417709f2a7a24673267462b405615c5df40 /kde-frameworks
parent8e3f5a0e42ba2822463660764321da4ed3b52ef9 (diff)
gentoo auto-resync : 03:10:2023 - 17:49:12
Diffstat (limited to 'kde-frameworks')
-rw-r--r--kde-frameworks/Manifest.gzbin13696 -> 13703 bytes
-rw-r--r--kde-frameworks/kxmlgui/Manifest2
-rw-r--r--kde-frameworks/kxmlgui/files/kxmlgui-5.111.0-fix-xml-merging.patch156
-rw-r--r--kde-frameworks/kxmlgui/kxmlgui-5.110.0-r1.ebuild49
4 files changed, 207 insertions, 0 deletions
diff --git a/kde-frameworks/Manifest.gz b/kde-frameworks/Manifest.gz
index 05f06cc0ad7f..2e3503b76554 100644
--- a/kde-frameworks/Manifest.gz
+++ b/kde-frameworks/Manifest.gz
Binary files differ
diff --git a/kde-frameworks/kxmlgui/Manifest b/kde-frameworks/kxmlgui/Manifest
index 33ebcd2a2a74..aeac6d6f7078 100644
--- a/kde-frameworks/kxmlgui/Manifest
+++ b/kde-frameworks/kxmlgui/Manifest
@@ -1,3 +1,5 @@
+AUX kxmlgui-5.111.0-fix-xml-merging.patch 5241 BLAKE2B 2b234a308039c343fd85788b02bdcef1339bcc53b3634ed5bed69dd5531b491d84b39dfb263f05ccd2a04b6ff034f7d7d3256d10a5eee45d929c236b7b40a4bf SHA512 4f47192c1f2bf5db6708979d418579cdc8c58387613ab2cb5bb89b0557f8d86ee0057edd9de3ea7a485b9a383a854094d2fef8bd85468942989bd5c4fc68b3e4
DIST kxmlgui-5.110.0.tar.xz 2953508 BLAKE2B 4e2643ae3b859485e1e4b90029d6f27f51c4fa6901ab55806b4ed75543874cdd69245a2f7eb3f20f77491d0ef4652ca499ffadec81ca8443f0b3ef03180b02db SHA512 2de1767737daea05f715dc73aff7ba76c59ad6ea1bf89aea5371032a3c16ca47fade78a3aec54970627f31b341ad39d0ccd25ccbc9f804125a9760e586d49d09
+EBUILD kxmlgui-5.110.0-r1.ebuild 1273 BLAKE2B 895d10e6550880da3d37baa72b3c7bbbdd57d5086a533af681086b0765feab03b6558c8eb8b867efdfd2967beca70b7a51e654da7cc8788e1c9367280c8c2069 SHA512 5313d5c1d41c3a057abde69a5f38c04ed2176e1adca762f1f4d26601a1e5c2c90e9ad16f8693cce38b5f3b3309c643512d2d30723cbe14626a7d8ccc6219def2
EBUILD kxmlgui-5.110.0.ebuild 1206 BLAKE2B a65a400d1fa44202a9b4a2434b6dc446dd7c7554aa8b3a360ec6c0ae06e30f05539dc9414fa6f6b048de3ec021a6f3e91a3873110fcfe86f84b16de9a41f1bea SHA512 cf91da4672e14fd1f21389ac13b9f90addcc30bbb03f2bf506547b10b7bf38af4bb78af254dbeb4450c531f8f18f163f7fd671266b038949e480db6a5d8ef761
MISC metadata.xml 547 BLAKE2B 127ee4110b748cd3e3c26b63248d35f78b233b00cf4466ccc0145a613062a5aa9cc2e9ebd91d0e7482c67f6e265938176b169a9c52eda30bfcddf02549ec8f06 SHA512 2d36585b1af6205dc1bfcff7c3cb24c85376716159317b5c105c866143d49e89e91e501c9a4cf2d63265c30a09e8df71bca841319bd3f2b551e79fde90b1d96e
diff --git a/kde-frameworks/kxmlgui/files/kxmlgui-5.111.0-fix-xml-merging.patch b/kde-frameworks/kxmlgui/files/kxmlgui-5.111.0-fix-xml-merging.patch
new file mode 100644
index 000000000000..013fbab9d1c7
--- /dev/null
+++ b/kde-frameworks/kxmlgui/files/kxmlgui-5.111.0-fix-xml-merging.patch
@@ -0,0 +1,156 @@
+https://invent.kde.org/frameworks/kxmlgui/-/merge_requests/190
+https://bugs.kde.org/show_bug.cgi?id=475016
+
+From f015fa6006d2e2eea2d2aac11c18219b255722ef Mon Sep 17 00:00:00 2001
+From: Mladen Milinkovic <maxrd2@smoothware.net>
+Date: Fri, 29 Sep 2023 20:01:49 +0200
+Subject: [PATCH] Fix merging of XMLs with multiple ActionProperties tags
+
+BUG: 475016
+--- a/autotests/kxmlgui_unittest.cpp
++++ b/autotests/kxmlgui_unittest.cpp
+@@ -88,6 +88,26 @@ static void createXmlFile(QFile &file, int version, int flags, const QByteArray
+ file.write("</" + toplevelTag + ">\n");
+ }
+
++class ShortcutSchemeHandler
++{
++public:
++ ShortcutSchemeHandler(const QString &scheme)
++ : cgScheme(KSharedConfig::openConfig(), "Shortcut Schemes")
++ , prevScheme(cgScheme.readEntry("Current Scheme", QStringLiteral("Default")))
++ {
++ cgScheme.writeEntry("Current Scheme", scheme);
++ }
++
++ ~ShortcutSchemeHandler()
++ {
++ cgScheme.writeEntry("Current Scheme", prevScheme);
++ }
++
++private:
++ KConfigGroup cgScheme;
++ const QString prevScheme;
++};
++
+ static void clickApply(KEditToolBar *dialog)
+ {
+ QDialogButtonBox *box = dialog->findChild<QDialogButtonBox *>();
+@@ -106,6 +126,15 @@ void KXmlGui_UnitTest::initTestCase()
+ QFile::remove(configFile);
+ KSharedConfig::openConfig()->reparseConfiguration();
+ }
++
++ // Create "Test" shortcut scheme to eliminate the KF warning
++ QFile testScheme = QFile(QStandardPaths::writableLocation(QStandardPaths::GenericDataLocation)
++ + QLatin1String("/%1/shortcuts/%2").arg(QCoreApplication::applicationName(), QStringLiteral("Test")));
++ if (!testScheme.exists()) {
++ QVERIFY(QFileInfo(testScheme).dir().mkpath(QStringLiteral(".")));
++ QVERIFY(testScheme.open(QIODevice::WriteOnly));
++ testScheme.write(QByteArray("<gui><ActionProperties/></gui>"));
++ }
+ }
+
+ void KXmlGui_UnitTest::testFindVersionNumber_data()
+@@ -457,6 +486,56 @@ void KXmlGui_UnitTest::testPartMerging()
+ factory.removeClient(&hostClient);
+ }
+
++void KXmlGui_UnitTest::testShortcutSchemeMerging()
++{
++ TestGuiClient client;
++
++ ShortcutSchemeHandler sss(QStringLiteral("Test"));
++
++ KActionCollection *ac = client.actionCollection();
++
++ QAction *a = ac->addAction(QStringLiteral("test_action"));
++ ac->setDefaultShortcut(a, QKeySequence(QStringLiteral("Ctrl+A")));
++
++ const QByteArray appXml = R"(<?xml version = "1.0"?>
++<!DOCTYPE kpartgui SYSTEM "kpartgui.dtd">
++<kpartgui name="foo" version="5">
++<MenuBar>
++ <Menu name="file"><text>&amp;File</text>
++ <Action name="test_action" />
++ </Menu>
++</MenuBar></kpartgui>
++)";
++ client.createGUI(appXml, false);
++
++ const QByteArray settingsXml = R"(<!DOCTYPE kpartgui SYSTEM 'kpartgui.dtd'>
++<kpartgui name="foo" version="1">
++ <MenuBar>
++ <Menu name="file">
++ <text>&amp;File</text>
++ <Action name="test_action" />
++ </Menu>
++ </MenuBar>
++ <ActionProperties scheme="Default">
++ <Action name="test_action" shortcut="Ctrl+B"/>
++ </ActionProperties>
++ <ActionProperties scheme="Test">
++ <Action name="test_action" shortcut="Ctrl+C"/>
++ </ActionProperties>
++</kpartgui>
++)";
++ client.mergeXML(settingsXml);
++
++ KMainWindow mainWindow;
++ KXMLGUIBuilder builder(&mainWindow);
++ KXMLGUIFactory factory(&builder);
++ factory.addClient(&client);
++
++ QCOMPARE(a->shortcut(), QKeySequence(QStringLiteral("Ctrl+C")));
++
++ factory.removeClient(&client);
++}
++
+ void KXmlGui_UnitTest::testPartMergingSettings() // #252911
+ {
+ const QByteArray hostXml =
+--- a/autotests/kxmlgui_unittest.h
++++ b/autotests/kxmlgui_unittest.h
+@@ -23,6 +23,7 @@ private Q_SLOTS:
+ void testVersionHandlerNewVersionUserChanges();
+ void testPartMerging();
+ void testPartMergingSettings();
++ void testShortcutSchemeMerging();
+ void testUiStandardsMerging_data();
+ void testUiStandardsMerging();
+ void testActionListAndSeparator();
+--- a/autotests/testguiclient.h
++++ b/autotests/testguiclient.h
+@@ -42,6 +42,10 @@ public:
+
+ setXML(QString::fromLatin1(xml), true);
+ }
++ void mergeXML(const QByteArray &xml)
++ {
++ setXML(QString::fromLatin1(xml), true);
++ }
+ void createActions(const QStringList &actionNames)
+ {
+ KActionCollection *coll = actionCollection();
+--- a/src/kxmlguiclient.cpp
++++ b/src/kxmlguiclient.cpp
+@@ -587,6 +587,8 @@ bool KXMLGUIClientPrivate::isEmptyContainer(const QDomElement &base, KActionColl
+
+ QDomElement KXMLGUIClientPrivate::findMatchingElement(const QDomElement &base, const QDomElement &additive)
+ {
++ const QString idAttribute(base.tagName() == QLatin1String("ActionProperties") ? QStringLiteral("scheme") : QStringLiteral("name"));
++
+ QDomNode n = additive.firstChild();
+ while (!n.isNull()) {
+ QDomElement e = n.toElement();
+@@ -604,7 +606,7 @@ QDomElement KXMLGUIClientPrivate::findMatchingElement(const QDomElement &base, c
+
+ // now see if our tags are equivalent
+ if (equalstr(tag, base.tagName()) //
+- && e.attribute(QStringLiteral("name")) == base.attribute(QStringLiteral("name"))) {
++ && e.attribute(idAttribute) == base.attribute(idAttribute)) {
+ return e;
+ }
+ }
+--
+GitLab
diff --git a/kde-frameworks/kxmlgui/kxmlgui-5.110.0-r1.ebuild b/kde-frameworks/kxmlgui/kxmlgui-5.110.0-r1.ebuild
new file mode 100644
index 000000000000..e891a27f3694
--- /dev/null
+++ b/kde-frameworks/kxmlgui/kxmlgui-5.110.0-r1.ebuild
@@ -0,0 +1,49 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+ECM_DESIGNERPLUGIN="true"
+PVCUT=$(ver_cut 1-2)
+QTMIN=5.15.9
+inherit ecm frameworks.kde.org
+
+DESCRIPTION="Framework for managing menu and toolbar actions in an abstract way"
+
+KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc64 ~riscv ~x86"
+LICENSE="LGPL-2+"
+IUSE=""
+
+# slot op: includes QtCore/private/qlocale_p.h
+DEPEND="
+ >=dev-qt/qtcore-${QTMIN}:5=
+ >=dev-qt/qtdbus-${QTMIN}:5
+ >=dev-qt/qtgui-${QTMIN}:5
+ >=dev-qt/qtnetwork-${QTMIN}:5[ssl]
+ >=dev-qt/qtprintsupport-${QTMIN}:5
+ >=dev-qt/qtwidgets-${QTMIN}:5
+ >=dev-qt/qtxml-${QTMIN}:5
+ =kde-frameworks/kconfig-${PVCUT}*:5
+ =kde-frameworks/kconfigwidgets-${PVCUT}*:5
+ =kde-frameworks/kcoreaddons-${PVCUT}*:5
+ =kde-frameworks/kglobalaccel-${PVCUT}*:5
+ =kde-frameworks/kguiaddons-${PVCUT}*:5
+ =kde-frameworks/ki18n-${PVCUT}*:5
+ =kde-frameworks/kiconthemes-${PVCUT}*:5
+ =kde-frameworks/kitemviews-${PVCUT}*:5
+ =kde-frameworks/kwidgetsaddons-${PVCUT}*:5
+"
+RDEPEND="${DEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-5.111.0-fix-xml-merging.patch
+)
+
+src_test() {
+ # Files are missing; whatever. Bugs 650290, 668198, 808216
+ local myctestargs=(
+ -E "(ktoolbar_unittest|kxmlgui_unittest|ktooltiphelper_unittest)"
+ )
+
+ ecm_src_test
+}